您的位置:首页 > 其它

ubuntu 双线双网卡双IP实现方式

2016-10-27 10:38 281 查看


昨天金桥机房上架了一台多玩的测试机,系统是ubuntu9.04X64的系统,母机IBMX336机器。用户需求是双线,故采用一个网卡配置电信地址,另一个网卡配置联通地址,安装好系统后配置好IP发现联通地址和电信地址只能有一个可以ping通,若电信地址配置网关,联通地址不配网关,则只能ping通电信地址,反之只能ping通联通地址,若同时配置联通和电信地址则两个都不通。因为不是咱们公司的网络,对于上层实现方式也不清楚,只知道联通和电信引至不同的VLAN,而且电信联通不不能透传,但他们有其他机器有同样的介入方式的机器却可以正常出外网,这样就排除网络的问题了,而且此台机器原来是2003系统的时候也可以正常访问网络,也排除了机器网卡的问题了。那么就只有是这个操作系统有问题了。经过求助google等大师,终于搞定。下面是具体操作流程:


ubuntu双网卡双IP.不同网关.不同子网.如何同时ping通两块网卡的解决方法,服务器环境如下:、系统:ubuntu9.04X64server电信IP(TEL):114.80.227.34netmask255.255.255.128gateway114.80.227.33联通IP(CNC):112.65.227.2netmask255.255.255.0gateway112.65.227.11.配置网卡信息#vi/etc/network/interfacesautoloifaceloinetloopback#Theprimarynetworkinterfaceautoeth0ifaceeth0inetstaticaddress114.80.227.34netmask255.255.255.128gateway114.80.227.33#dns-*optionsareimplementedbytheresolvconfpackage,ifinstalleddns-nameservers202.96.209.133autoeth1ifaceeth1inetstatic




address112.65.227.2netmask255.255.255.0保存配置信息并重新启动网卡#/etc/init.d/networkingrestart2.增加2个路由表分别是电信:tel联通:cnc#vi/etc/iproute2/rt_tables252tel251cnc保存并推出3.增加路由规则#iprouteflushtabletel#iprouteadddefaultvia114.80.227.33deveth0src114.80.227.34tabletel#ipruleaddfrom114.80.227.34tabletel此处是设置电信的网关,并可实现让电信的资源访问只从eth0网卡出去#iprouteflushtablecnc#iprouteadddefaultvia112.65.227.1deveth1src112.65.227.2tablecnc#ipruleaddfrom112.65.227.2tablecnc此处是设置联通的网关,并可实现让联通的资源访问只从eth1网卡出去


4.配置networking启动脚本文件在结尾exit0之前增加如下内容#vi/etc/init.d/networkingiprouteflushtableteliprouteadddefaultvia114.80.227.33deveth0src114.80.227.34tabletelipruleaddfrom114.80.227.34tableteliprouteflushtablecnciprouteadddefaultvia112.65.227.1deveth1src112.65.227.2tablecncipruleaddfrom112.65.227.2tablecncexit05,退出并重启网络#/etc/init.d/networkingrestart此时再测试机器网络情况,就会发现电信和联通的地址都可以正常访问了。此方法还可以实现让从电信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对于系统启动脚本本次并没有做更改只是更改了网络启动脚本,有兴趣的同学可以测试下。


Ubuntu下单网卡多IP地址的配置

[1]删除用户默认配置文件
由于在默认清空下,配置文件是系统自动生成的用户设备配置文件保存在
/etc/udev/rule.d/下面

#cp/etc/udev/rule.d/etc/udev/rule.d.bak.0-R
#rm/etc/udev/rule.d/*

[2]修改网卡配置文件,添加多IP配置
#vim/etc/network/interfaces

为如下内容
autolo
ifaceloinetloopback

autoeth0
ifaceeth0inetstatic
address192.168.76.192
netmask255.255.255.0
gateway192.168.76.254

autoeth0:0
ifaceeth0:0inetstatic
address192.168.76.193
netmask255.255.255.0
gateway192.168.76.254

autoeth0:1
ifaceeth0:1inetstatic
address192.168.76.194
netmask255.255.255.0
gateway192.168.76.254

实验环境,我添加了三个IP地址

[3]让配置生效
#/etc/init.d/networkingrestart

[4]检查效果
#ifconfig
eth0Linkencap:EthernetHWaddr-------------------------------
inetaddr:192.168.76.192Bcast:192.168.76.255Mask:255.255.255.0
inet6addr:fe80::92e6:baff:fea0:b517/64Scope:Link
UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1
RXpackets:17278errors:0dropped:0overruns:0frame:0
TXpackets:7044errors:0dropped:0overruns:0carrier:1
collisions:0txqueuelen:1000
RXbytes:8162087(8.1MB)TXbytes:1085377(1.0MB)
Interrupt:30

eth0:0Linkencap:EthernetHWaddr-------------------------------
inetaddr:192.168.76.193Bcast:192.168.76.255Mask:255.255.255.0
UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1
Interrupt:30

eth0:1Linkencap:EthernetHWaddr-------------------------------
inetaddr:192.168.76.194Bcast:192.168.76.255Mask:255.255.255.0
UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1
Interrupt:30

可以看到三个IP地址,就说明配置成功了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: