有些小伙伴的VPS拥有多个对外IP,尤其是IPv6。当拥有多个IP地址时,默认出口的IP是最后添加的一个,所以如果需要指定对外IP地址时,可以用以下指令。
首先ip a
看看网卡信息
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_pie state UP group default qlen 1000
link/ether 00:33:ff:00:33:aa brd ff:ff:ff:ff:ff:ff
altname enp0s17
altname ens17
inet 123.123.123.111/25 brd 123.123.123.255 scope global eth0
valid_lft forever preferred_lft forever
inet 123.123.123.222/26 scope global eth0
valid_lft forever preferred_lft forever
inet6 2001::baba/64 scope global
valid_lft forever preferred_lft forever
inet6 2001::face/64 scope global
valid_lft forever preferred_lft forever
IPv4
首先看一下路由信息。
ip route show
找到默认网关,比如
default via 123.123.123.1 dev eth0 src 123.123.123.111
把默认出口修改成123.123.123.222
ip route change default via 123.123.123.1 dev eth0 src 123.123.123.222
其中,123.123.123.1是出口IPv4对应的网关IP地址,eth0是网卡设备名,123.123.123.222是实际出口的IPv4。
IPv6
首先还是看一下路由信息。
ip -6 route show
找到默认网关,比如
default via 2001::1 dev eth0 src 2001::face metric 1024 pref medium
把默认出口修改成2001::baba
ip -6 route change default via 2001::1 dev eth0 src 2001::baba
其中,2001::1是出口IPv6对应的网关IP地址,eth0是网卡设备名,2001::baba是实际出口的IPv6。