Linux下同一个网卡多个同网段的地址,如何永久指定源地址?

如题所述

1. 在CentOS中添加路由的方法众多,你使用的是命令行方式。但请注意,使用`ip route change default dev ens160 src 192.168.3.10`命令时,如果没有保存该更改,一旦网络接口卡(网卡)配置了多个IP地址,对于由此主机产生的网络数据包,路由选择时可以指定源IP地址。`src`选项仅影响该主机产生的数据包。如果是一个已经路由到本地的数据包,它已经携带了一个源IP地址,此时,`src`参数的配置对它不会产生影响,除非你使用网络地址转换(NAT)来修改它。
2. 默认情况下,源地址是ens160。你可以交换ens160:1和ens160的IP地址作为默认路由。如果在`vi /etc/sysconfig/network`中删除了`GATEWAY=192.168.3.254`,`ip route ls`命令将默认包含`src 192.168.3.10`。
3. 在`vi /etc/sysconfig/network-scripts/ifcfg-ens160:0`文件中添加`GATEWAY=192.168.3.10`。
4. 或者在`vi /etc/sysconfig/network-scripts/route-ens160:0`文件中添加如下静态路由:
```
0.0.0.0/0 via 192.168.3.254 dev ens160:0 src 192.168.3.10
192.168.3.0/24 via 192.168.3.254 dev ens160:0 src 192.168.3.10
default via 192.168.3.254 dev ens160:0 src 192.168.3.10
```
5. 或者将静态路由添加到`/etc/sysconfig/static-routes`文件中:
```
any net any gw 192.168.3.254
any net 192.168.3.0/24 gw 192.168.3.254
any net 192.168.3.0 netmask 255.255.255.0 gw 192.168.3.254
```
确保以上操作后,系统重启网络服务使配置生效。
温馨提示:答案为网友推荐,仅供参考
相似回答