我有一个外部托管的服务器,它有一个网络服务器,我使用 SSH 访问它,它的 ip 是111.111.111.111
。当我使用 OpenVPN 将服务器连接到 VPN sudo openvpn XXX.ovpn
(配置文件取自 NordVPN)然后 SSH 和 Web 服务器停止工作,我想使用相同的 ip 访问服务器时,就会出现问题111.111.111.111
。
我仍然设法通过将路由添加到我的电脑来访问它ip route add <MY_IP_PC> via 10.0.0.1 dev enp0s6
,但我是唯一一个可以通过这种方式访问网络服务器的人,其他人都不能。
VPN 连接前
ubuntu@server1:~$ 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
valid_lft forever preferred_lft forever
2: enp0s6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast state UP group default qlen 1000
link/ether 02:00:17:00:78:88 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.67/24 metric 100 brd 10.0.0.255 scope global enp0s6
valid_lft forever preferred_lft forever
inet6 fe80::17ff:fe00:7888/64 scope link
valid_lft forever preferred_lft forever
ubuntu@server1:~$ ip route
default via 10.0.0.1 dev enp0s6
default via 10.0.0.1 dev enp0s6 proto dhcp src 10.0.0.67 metric 100
10.0.0.0/24 dev enp0s6 proto kernel scope link src 10.0.0.67 metric 100
10.0.0.1 dev enp0s6 proto dhcp scope link src 10.0.0.67 metric 100
<MY_IP_PC> via 10.0.0.1 dev enp0s6
169.254.0.0/16 dev enp0s6 scope link
169.254.0.0/16 dev enp0s6 proto dhcp scope link src 10.0.0.67 metric 100
169.254.169.254 via 10.0.0.1 dev enp0s6 proto dhcp src 10.0.0.67 metric 100
VPN 连接后
ubuntu@server1:~$ 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
valid_lft forever preferred_lft forever
2: enp0s6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc pfifo_fast state UP group default qlen 1000
link/ether 02:00:17:00:78:88 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.67/24 metric 100 brd 10.0.0.255 scope global enp0s6
valid_lft forever preferred_lft forever
inet6 fe80::17ff:fe00:7888/64 scope link
valid_lft forever preferred_lft forever
4: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 500
link/none
inet 10.8.1.10/24 scope global tun0
valid_lft forever preferred_lft forever
inet6 fe80::4f41:a589:8792:84e6/64 scope link stable-privacy
valid_lft forever preferred_lft forever
ubuntu@server1:~$ ip route
0.0.0.0/1 via 10.8.1.1 dev tun0
default via 10.0.0.1 dev enp0s6
default via 10.0.0.1 dev enp0s6 proto dhcp src 10.0.0.67 metric 100
10.0.0.0/24 dev enp0s6 proto kernel scope link src 10.0.0.67 metric 100
10.0.0.1 dev enp0s6 proto dhcp scope link src 10.0.0.67 metric 100
10.8.1.0/24 dev tun0 proto kernel scope link src 10.8.1.10
<MY_IP_PC> via 10.0.0.1 dev enp0s6
128.0.0.0/1 via 10.8.1.1 dev tun0
169.254.0.0/16 dev enp0s6 scope link
169.254.0.0/16 dev enp0s6 proto dhcp scope link src 10.0.0.67 metric 100
169.254.169.254 via 10.0.0.1 dev enp0s6 proto dhcp src 10.0.0.67 metric 100
217.138.219.171 via 10.0.0.1 dev enp0s6
答案1
$ ip route
0.0.0.0/1 via 10.8.1.1 dev tun0
因此,一半流量(0.0.0.0/1,即如果目标 IP 地址以偶数结尾)将通过 VPN 连接,另一半流量(如果目标 IP 地址以奇数结尾)将通过您的默认网关。至少可以说,这毫无意义。
换句话说,尽管请求来自 enp0s6 接口,但对 HTTP 和 SSH 连接的回复可能会通过 VPN。 VPN 端的一个像样的防火墙可能会丢弃它们。