Centos7 双网口内外网同时上网配置策略
最近遇到一台内网服务器需要同时访问内外网需求,使用双网线策略,由于情况比较特殊,所以记录下踩坑记录
1. 插上网线后查看本地网卡配置
ifconfig
#可能会有很多虚拟网卡,这里可以通过ip找到我们需要配置网卡名
#外网网卡
eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.100.20 netmask 255.255.255.254 broadcast 192.168.100.21
inet6 fe80::b21:d2a5:7bca:4e5a prefixlen 64 scopeid 0x20<link>
ether 18:56:44:35:b9:d6 txqueuelen 1000 (Ethernet)
RX packets 2292 bytes 284061 (277.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1506 bytes 270765 (264.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
#内网网卡
eno2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.234.93.131 netmask 255.255.255.128 broadcast 10.234.93.255
inet6 fe80::1b42:eb4d:2ac2:558a prefixlen 64 scopeid 0x20<link>
ether 18:56:44:35:b9:d7 txqueuelen 1000 (Ethernet)
RX packets 1392 bytes 102845 (100.4 KiB)
RX errors 0 dropped 383 overruns 0 frame 0
TX packets 111 bytes 11412 (11.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
...
#前面的eno1就是网卡的名称
2. 去掉内网网关
cd /etc/sysconfig/network-scripts/
vim ifcfg-eno2
#主要 关掉内网默认网关,注释原有网关地址
#默认路由
DEFROUTE=no
#网关
#GATEWAY=10.234.93.131
#开机自动启用
ONBOOT=yes
#网卡优先级,值越小优先级越高
IPV4_ROUTE_METRIC=0
3. 添加路由
#临时添加
ip route add 10.234.93.0/24 via 10.234.93.129 dev eno2
#永久重启任然生效
vim /etc/sysconfig/network-scripts/route-eno2
10.234.93.0/24 via 10.234.93.129 dev eno1
正常情况上面配置就已经可以正常使用了,下面介绍我遇到特殊情况
4. 特殊处理
4.1 公司内网划分多个lan或vlan
这种情况如果不进行手动干预的话,配置完后你将只能访问离你最近路由器内网段,
例如上面配置10.234.93.0/24 网段,你将无法访问到10.234.95.0/24这些网段。
因为现在默认网关为外网路由器网关,上面配置内网路由又不可达该其他网段。
相关信息
解决办法也很简单为其他内网网段也设置一条路由,并设置下一跳(这里出口还是内网网关)
#临时添加
ip route add 10.234.93.0/24 via 10.234.93.129 dev eno2
#其他lan 有多少加多少
ip route add 10.234.92.0/24 via 10.234.93.129 dev eno2
ip route add 10.234.99.0/24 via 10.234.93.129 dev eno2
ip route add 192.168.3.0/24 via 10.234.93.129 dev eno2
#这里可以使用一点偷懒写法,虽然公司lan不可能把第一类私有地址全占用了,但是下一跳地址时一样的,
#这里扩大原有主机位地址,原来只有8位主机位+24位网络位,改为10.0.0.0/8 24位主机位,
#这样所有10.*.*.*开头地址都会走这条路由
ip route add 10.0.0.0/8 via 10.234.93.129 dev eno2
4.2 公司有自己DNS服务器(域名解析服务器)
上面配置完后虽然能访问原本内网所能正常到达ip,访问仅存在内网域名时,在经过外网路由默认DNS解析时,将会返回主机不存在错误,
所以原有DNS解析配置文件也需要修改。
1. 禁止NetworkManager管理本地DNS(防止重启失效)
vim /etc/NetworkManager/NetworkManager.conf
#在main部分添加 dns=none
2. 修改本地DNS服务器地址
#可添加多条,按优先级
nameserver 局域网DNS服务器地址
#下面添加公网DNS服务器地址
nameserver 114.114.114.114
提示
总结就是 内网走自定义路由,其他(外网)走默认路由 让内网路由优先级高一点