当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > FreeBSD下一块网卡绑定多个IP的方法

Unix/Linux
使用yum把内核升级到Kernel 2.6.0test9
请问如何在vi中做到高亮显示?
Firefly 的Xft2 for Fedora下载安装
如何设置cygwin控制台字体高亮显示?
SWT(implemented with gtk)的可视化控件的X11窗口句柄
发现PUTTY的一个弱点
rh9.0的apache怎么没有htdoc这个文件夹啊
网络字节序的问题
linux filesystem 1TB limited?
防火墙iptables的一个有些难度的问题(虚心请教高手)
总结INIT :Id "2" respawing too fast :disable for 5
编译完内核让它支持ntfs之后,只需要make dep就可以吗?
在Virtual PC 5.2上配置Debian的网络
如何设置同一用户同一时间只能有一个人登陆啊??
讨论一下:mount 时会不会提示本地目录已经mount了一个了?
can't add this user?why?
有没有可能突破扩展分区上逻辑分区15个的限制?
1.网友文章:一Linux系统的入侵分析 (2002年6月11日)
Debian参考手册
提供在turbolinux7.0下安装拨号服务器的方法!

Unix/Linux 中的 FreeBSD下一块网卡绑定多个IP的方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-15   浏览: 149 ::
收藏到网摘: n/a

假设网卡lnc0原IP地址为192.168.0.2,现在为它绑定另一个IP:

CODE

# ifconfig lnc0 192.168.0.3 netmask 255.255.255.255 alias

解释:
CODE

如果别名IP地址和网卡原IP地址在同一个子网上,就需要设置掩码为255.255.255.255
如果位于不同的子网,就直接使用相应子网的正常网络掩码

从TCP/IP的角度来看,这样做意味着什么呢?
网络掩码的所有位都设置成1,就会保证ICP/IP栈这样来看待包:
只要包的目标地址匹配所有位,就把该包看成本地子网上的包;它创建了只有一个地址的“子网”。
所有发送给该地址的包以及该地址接受的包都会发送给路由器,而不会发送到LAN上。
如果多个别名使用了同一个网络掩码,这些别名的广播地址也应该相同,而这样却导致了TCP/IP栈的混乱。
使用全1的网络掩码,才能骗过ifconfig,让该命令允许单个接口卡上有多个IP地址。

要在/etc/rc.conf中设置别名,应该使用 ifconfig_xxx#_alias# 关键字,该关键字的使用形式类似于 ifconfig_xxx#:

CODE

ifconfig_lnc0="inet 192.168.0.2 netmask 255.255.255.0"
ifconfig_lnc0_alias0="inet 192.168.0.3 netmask 255.255.255.255"
ifconfig_lnc0_alias1="inet 192.168.1.2 netmask 255.255.255.0"
ifconfig_lnc0_alias2="inet 192.168.1.3 netmask 255.255.255.255"