CentOS系统双网卡同时访问内外网设置
双网卡电脑不可能同时有两个默认网关,默认网关(default gateway)只能有一个
双网卡双网关冲突的原因是:两张网卡设置两个网关,而且都设置成了默认网关
双网卡服务器需要同时访问内外网,一般只设置一个网关(外网),另一个写静态路由(内网),因为默认网关只能有一个。
解决方法:一张网卡设置成默认网关;另一张网卡写静态路由,数据通过静态路由中写的网关传输。
enp65s0f0配置外网IP:192.168.1.1/27 网关:192.168.1.30
enp1s0f3配置内网IP:192.168.1.33/27 网关:192.168.1.62
需求:192.168.34.32/30网段走内网网卡enp1s0f3,其余网段走外网网卡enp65s0f0。
1、编辑网卡配置文件
enp65s0f0配置文件/etc/sysconfig/network-scripts/ifcfg-enp65s0f0
BOOTPROTO=static
NAME=enp65s0f0
ONBOOT=yes
IPADDR=192.168.1.1
PREFIX=27
GATEWAY=192.168.1.30 #正常配置网关
enp1s0f3配置文件/etc/sysconfig/network-scripts/ifcfg-enp1s0f3
BOOTPROTO=static
NAME=enp1s0f3
ONBOOT=yes
IPADDR=192.168.1.33
PREFIX=27
GATEWAY=192.168.1.62 #注释掉,不配置网关
2、设置永久静态路由
使用nmtui图形化命令,在enp1s0f3下添加路由
nmtui-Edit a connection-enp1s0f3-Routing-<Edit . . .>-<Add. . .>
Destination/Prefix目的:192.168.34.32/30
Next Hop下一跳:192.168.1.62
Metric度量值:1000
或者直接添加内网网卡enp1s0f3的路由文件
注意文件名字的格式,route-需要添加路由的网卡名称
vi /etc/sysconfig/network-scripts/route-enp1s0f3
ADDRESS0=192.168.34.32
NETMASK0=255.255.255.252
GATEWAY0=192.168.1.62
METRIC0=1000
:wq! #保存配置
或者直接添加一行即可
192.168.34.32/30 via 192.168.1.62 dev enp1s0f3 metric 1000
3、重启网络
CentOS 7.x重启网络
systemctl restart network
CentOS 8.x重启网络
nmcli d reapply enp1s0f3 #刷新网卡配置文件
nmcli d connect enp1s0f3 #激活网卡
nmcli connect reload #重新加载配置
nmcli connect up enp1s0f3 #重启网卡
nmcli n off && nmcli n on #重启整个网络命令
查看路由表
route -n
ip route show
至此,CentOS系统双网卡同时访问内外网设置完成。
扩展阅读:
添加临时路由
[root@centos-8 ~]# route add -net 192.168.10.0/24 gw 192.168.10.254 enp1s0f3
删除路由
route del -net 192.168.0.0/24
设置默认网关地址
route add default gw 192.168.1.1
双网卡都配网关,只能有一个生效
DEFROUTE=yes
IPV4_ROUTE_METRIC=0/100 #数字越小优先级越高,但是默认网关只能有一个,相当于主备网关
只有当主网关断掉了,备用网关才会生效
Windows系统添加静态路由
route add -p 192.168.1.1 mask 255.255.255.0 192.168.0.1 #-p表示永久路由
Windows系统删除静态路由
route delete 192.168.1.1
Windows系统查看路由
route print