双网卡一台电脑拥有两个网关是不可能的,另一个网卡配置联通地址

2019-11-19 作者:美高梅-操作系统   |   浏览(52)

双网卡一般情况不能有两个网关

机房上架了一台测试机,系统是ubuntu9.04 X64的系统,母机IBM X336机器。用户需求是双线,故采用一个网卡配置电信地址,另一个网卡配置联通地址,安装好系统后配置好IP发现联通地址和电信地址只能有一个可以ping通,若电信地址配置网关,联通地址不配网关,则只能ping通电信地址,反之只能ping通联通地址,若同时配置联通和电信地址则两个都不通。
因为不是咱们公司的网络,对于上层实现方式也不清楚,只知道联通和电信引至不同的VLAN,而且电信联通不不能透传,但他们有其他机器有同样的介入方式的机器却可以正常出外网,这样就排除网络的问题了,而且此台机器原来是2003系统的时候也可以正常访问网络,也排除了机器网卡的问题了。那么就只有是这个操作系统有问题了。经过求助google等大师,终于搞定。下面是具体操作流程:
ubuntu双网卡双IP.不同网关.不同子网.如何同时ping通两块网卡的解决方法,
服务器环境如下:、
系统:ubuntu9.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.1
1.配置网卡信息
# vi /etc/network/interfaces
auto 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.133
auto eth1
iface eth1 inet static
address 112.65.0.2
netmask 255.255.255.0
保存配置信息并重新启动网卡
# /etc/init.d/networking restart
2.增加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/networking
ip 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 tel
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
exit 0
5,退出并重启网络
# /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
对于系统启动脚本本次并没有做更改只是更改了网络启动脚本,有兴趣的同学可以测试下。

服务器环境如下:

 

本文来自于 lng1115 的BLOG

IBM服务器,共有4个网卡;

特别是别设内网网关,这样有段时间过后会出现访问不了外网情况

X64的系统,母机IBM X336机器。用户需求是双线,故采用一个网卡配置电信地址,另一个网卡配置联通...

操作系统:Ubuntu-10.10-server

 

接入内网、电信和联通的IP,信息如下

支持两个网关的方法倒是有

内网:168.168.168.96

 

电信(TEL)IP:  125.91.219.252;  子网掩码: 255.255.255.248; 网关:125.91.219.249

让双网卡一台电脑拥有两个网关(转)

联通(CNC)IP:  120.81.225.31;  子网掩码: 255.255.255.0; 网关:120.81.225.1

首先要声明一点,双网卡一台电脑拥有两个网关是不可能的,因为默认网关(default gateway)只能是一个。

操作步骤如下

给服务器安装两块网卡,分别设置不同的ip和网关(内网和外网),外网的通过外网网卡来访问,内网的通过内网网卡来访问,似乎实现起来很简单,但事实上很难啊,因为默认网关(default gateway)只能是一个!

1、  配置网卡信息

解决的办法就是:

运行命令sudo vim /etc/network/interfaces把里面的配置修改为如下

1、将其中一块网卡(如外网)设置默认网关;

auto lo

2、手工加上一条静态路由,让另一个网段(内网)的数据经过第二个网卡。使用route命令,命令的范例如下,希望能帮某些同志一点小忙。

iface loinet loopback

参考命令:

auto eth0

范例1、route add -p 10.0.0.0 mask 255.255.255.0 10.40.4.200(让对10.0.0.1的访问走10.40.4.200的网卡,mask 后面是子网掩码)

ifaceeth0 inet static

范例2、route add -p 10.0.0.0 mask 255.0.0.0 10.40.4.200

address 168.168.168.96

范例3、route add -p 0.0.0.0 mask 0.0.0.0 10.40.4.200(不用说了吧,让所有的访问走10.40.4.200)

netmask 255.255.255.0

说明:

ifaceeth1 inet static

本文由美高梅赌堵59599发布于美高梅-操作系统,转载请注明出处:双网卡一台电脑拥有两个网关是不可能的,另一个网卡配置联通地址

关键词:

  • 上一篇:没有了
  • 下一篇:没有了