cd /etc/sysconfig/network-scripts/
对ifcfg-eth0和ifcfg-eth1分别设置成需要的ip;
然后输入 service network restart 生效;
这样就实现双ip了
需要使用iproute2包中的 ip命令完成。首先 /etc/iproute2/rt_tables 里面添加2个table, 对应2个不同的网段(net3 net5)
配置思路是 用ip route 命令为net3 table增加default gw 118.126.3.1,net5 table 增加default gw 118.126.5.1
然后用 ip rule 命令 使用源地址匹配规则 源地址为118.126.3.16的数据包选择 net3 table, 源地址为118.126.5.251的数据包选择net5 table.
当然你也需要设置本机的默认default gw(直接用route命令),那么由本机生成的数据包,默认会选用与default gw连接的那块网卡的ip地址对外通讯(程序指定的除外)。
以上配置对于正常开发的 tcp通讯软件完全可以正确工作,ping也没有问题。 不过某些开发不正确的udp软件可能运行会不正常(这种udp软件,在有两个以上ip地址的主机上工作都会有问题)
ubuntu双网卡双IP.不同网关.不同子网.如何同时ping通两块网卡的解决方法,服务器环境如下:、系统:Ubuntu 9.04 X64 server电信IP(TEL):114.80.0.4 netmask 255.255.255.128 gateway 114.80.0.3联通IP(CNC):112.65.0.2 netmask 255.255.255.0 gateway 112.65.0.11.配置网卡信息# vi /etc/network/interfacesauto lo iface lo inet loopback# The primary network interface auto eth0 iface eth0 inet static address 114.80.0.4 netmask 255.255.255.128 gateway 114.80.0.3 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 202.96.209.133auto eth1 iface eth1 inet static address 112.65.0.2 netmask 255.255.255.0保存配置信息并重新启动网卡# /etc/init.d/networking restart2.增加2个路由表分别是电信:tel 联通:cnc # vi /etc/iproute2/rt_tables 252 tel 251 cnc保存并推出3.增加路由规则 # ip route flush table tel # ip route add default via 114.80.0.3 dev eth0 src 114.80.0.4 table tel # ip ruleadd from 114.80.0.4 table tel此处是设置电信的网关,并可实现让电信的资源访问只从eth0网卡出去# ip route flush table cnc # ip route add default via 112.65.0.1 dev eth1 src 112.65.0.2 table cnc # ip rule add from 112.65.0.2 table cnc此处是设置联通的网关,并可实现让联通的资源访问只从eth1网卡出去4.配置networking启动脚本文件 在结尾exit 0之前增加如下内容# vi /etc/init.d/networkingip route flush table tel ip route add default via 114.80.0.3 dev eth0 src 114.80.0.4 table tel ip rule add from 114.80.0.4 table telip route flush table cnc ip route add default via 112.65.0.1 dev eth1 src 112.65.0.2 table cnc ip rule add from 112.65.0.2 table cncexit 05,退出并重启网络# /etc/init.d/networking restart此时再测试机器网络情况,就会发现电信和联通的地址都可以正常访问了。此方法还可以实现让从电信IP过来的请求按照电信路由返回,从网通IP过来的请求从网通路由返回。补充:网上有些大神说如果服务器重启,或者网络服务重启,上述的路由规则就失效了,所以你需要把上面这段命令写入系统启动脚本和网络启动脚本如果是ubuntu/debian,系统启动脚本是/etc/rc.local 如果是RedHat/CentOS,系统启动脚本是/etc/rc.d/rc.local如果是ubuntu/debian,网络启动脚本是/etc/init.d/networking 如果是RedHat/centos,网络启动脚本是/etc/rc.d/init.d/network欢迎分享,转载请注明来源:夏雨云
评论列表(0条)