Linux论坛's Archiver

《开源》旗舰电子杂志2009年第1期火热下载!

yjbjtg 发表于 2008-4-14 10:19

关于网络编程?

请教各位一个问题:在应用中怎么样配置IP地址和DNS ? 我现在在应用程序中加入此代码: system("ifconfig eth0 192.168.2.100") ,则可以配置ip ,但是,我要做到能修改IP ,把192.168.2.100  改成变量,数组,指针都不行,
似乎此命令格式只认识点分十进制:192.168.2.100  。我该怎么修改才能配置成功呢?还有没有其他方法配置IP 呢?比如通过API,又怎么配置呢?谢谢!

cugbcat 发表于 2008-4-14 15:42

参考UNP相关章节。

锅盖头 发表于 2008-4-18 07:18

顶一下吧,呵呵

Flyinmorning 发表于 2008-4-20 01:49

[quote]原帖由 [i]yjbjtg[/i] 于 2008-4-14 10:19 发表 [url=http://bbs.linuxpk.com/redirect.php?goto=findpost&pid=47016&ptid=13786][img]http://bbs.linuxpk.com/images/common/back.gif[/img][/url]
请教各位一个问题:在应用中怎么样配置IP地址和DNS ? 我现在在应用程序中加入此代码: system("ifconfig eth0 192.168.2.100") ,则可以配置ip ,但是,我要做到能修改IP ,把192.168.2.100  改成变量,数组,指针都 ... [/quote]

char interface[]="eth0";
char ipaddr[]="192.168.2.100";

char command[64];
sprintf(command,"ifconfig %s %s",interface,ipaddr);
system(command);

laughing_hys 发表于 2008-4-30 15:56

回复 1楼 yjbjtg 的帖子

如果在代码里实现的话,ip地址可以表示为网络地址也可以表示为十六进制的地址
参考地址结构
struct sockaddr_in {
        short   sin_family;
        u_short sin_port;
        struct  in_addr sin_addr;
        char    sin_zero[8];
};
和以下两个函数
inet_addr()  inet_ntoa()

页: [1]

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.