当前位置: 技术问答>linux和unix
linux在TCP通信中,如何指定本机IP地址。
来源: 互联网 发布时间:2016-07-13
本文导语: 例如listen的一方如何指定自身的地址 connect的一方如何指定自身的地址 不要说程序运行时用ifconfig.. | 端口可以用bind指定, 地址就没有试过. 在多IP地址的机器上, 应该是可以的, 但是如果bind...
例如listen的一方如何指定自身的地址
connect的一方如何指定自身的地址
不要说程序运行时用ifconfig..
connect的一方如何指定自身的地址
不要说程序运行时用ifconfig..
|
端口可以用bind指定,
地址就没有试过.
在多IP地址的机器上, 应该是可以的, 但是如果bind的地址根本就不是本机地址. 应该会返回EADDRNOTAVAIL
地址就没有试过.
在多IP地址的机器上, 应该是可以的, 但是如果bind的地址根本就不是本机地址. 应该会返回EADDRNOTAVAIL
|
127.0.0.1
|
或者bind的时候用any
|
建立好socket后,初始化时:my_addr.sin_addr.s_addr = INADDR_ANY用这个即可。
|
谢谢了!
|
不知道我的理解对不对:楼主想自己用192.168.0.2,别人看到你的IP却是192.168.0.3,除了用代理,你还能用什么违反原理的方法来建立TCP连接?
|
的确是这样 楼主的意图只能通过代理来实现
|
难怪在下理解错了楼主的意思。。。(*^__^*) 嘻嘻……
|
使用虚拟网卡,用虚拟网卡发数据,给虚拟网卡随便设你想要的IP
不用虚拟网卡的话,自己修改IP数据包的源IP地址
不用虚拟网卡的话,自己修改IP数据包的源IP地址
|
貌似那种钩子程序也可以吧,不太懂
|
有一种接口配置方式叫trunk,也就是说一个网卡可以有两个IP,但通常只用在路由服务方面。LInux本身可以做路由方面的服务,应该支持吧?(不确定)。你可以先了解一下配置方法,尝试伪装一下你的网卡是192.168.0.3.