正如标题所示,我在设置网络时遇到问题,以便服务器可以访问互联网。在我布置基础设施时请耐心等待。
所有 3 台服务器均由Hetzner托管。网关和服务器 1 是云服务器,而服务器 2 是通过 vSwitch 连接的专用服务器。以下是有关此设置的一些文档:Connect Dedicated Servers (vSwitch)
服务器 1 和服务器 2 不应有公共 IP 地址,所有流量都经过网关。
所有端口 53 (DNS) 请求都路由到网关。
我有一个从我的电脑到专用网络的有效 VPN 连接。
Network 10.1.0.0/16
Static Route 0.0.0.0/0 -> 10.1.0.2
Subnet 10.1.0.0/24
Gateway 10.1.0.2 (pfSense - OpenVpn, DnsResolver)
Server1 (Cloud) 10.1.0.3
Subnet 10.1.1.0/24
Server2 (Dedicated) 10.1.1.3
服务器 1
Ubuntu 22.04
- 通过 vpn 访问
- 能ping/访问10.1.0.1、10.1.0.2、10.1.1.3
- 可以ping/访问互联网
- 可以解析任何域(外部和网络内部通过 pfSense DNS 解析器)
ip route
default via 10.1.0.1 dev enp7s0 proto static onlink
10.1.0.0/16 via 10.1.0.1 dev enp7s0 proto dhcp src 10.1.0.3 metric 100
10.1.0.1 dev enp7s0 proto dhcp scope link src 10.1.0.3 metric 100
169.254.169.254 via 10.1.0.1 dev enp7s0 proto dhcp src 10.1.0.3 metric 100
网络计划
network:
version: 2
renderer: networkd
ethernets:
enp7s0:
dhcp4: true
routes:
- to: default
via: 10.1.0.1
nameservers:
addresses:
- 10.1.0.2
- 8.8.4.4
- 8.8.8.8
tracepath -n 10.1.1.3
1?: [LOCALHOST] pmtu 1450
1: 10.1.0.1 2.623ms
1: 10.1.0.1 1.490ms
2: 169.254.255.255 1.934ms asymm 1
3: 10.1.1.3 25.501ms reached
Resume: pmtu 1450 hops 3 back 2
tracepath -n google.com
1?: [LOCALHOST] pmtu 1450
1: 10.1.0.1
1: 10.1.0.1
2: 10.1.0.2
3: 172.31.1.1
服务器 2
Ubuntu 22.04
- 通过 vpn 访问
- 能ping/访问10.1.0.2、10.1.0.3
- 无法 ping 通 10.1.1.1
- 无法 ping/访问互联网
- 可以解析任何域(外部和网络内部通过 pfSense DNS 解析器)
ip route
default via 10.1.1.1 dev enp2s0.4000 proto static
10.1.1.0/24 dev enp2s0.4000 proto kernel scope link src 10.1.1.3
网络规划
network:
version: 2
renderer: networkd
ethernets:
enp2s0: {}
vlans:
enp2s0.4000:
id: 4000
link: enp2s0
mtu: 1400
addresses:
- 10.1.1.3/24
routes:
- to: default
via: "10.1.1.1"
nameservers:
addresses:
- 10.1.0.2
- 8.8.4.4
- 8.8.8.8
tracepath -n 10.1.0.3
1?: [LOCALHOST] pmtu 1400
1: 10.1.1.1 0.393ms
1: 10.1.1.1 0.364ms
2: 10.1.0.3 25.265ms reached
Resume: pmtu 1400 hops 2 back 3
tracepath -n google.com
1?: [LOCALHOST] pmtu 1400
1: no reply
正如您希望看到的那样,我遇到的问题是专用服务器(服务器 2)似乎无法连接到它的子网网关(10.1.1.1)及以后,但它可以连接到私有中的其他服务器网络就好了。
也许我看错了东西?