![모바일 오피스를 갖춘 Wireguard Site2Site](https://rvso.com/image/768916/%EB%AA%A8%EB%B0%94%EC%9D%BC%20%EC%98%A4%ED%94%BC%EC%8A%A4%EB%A5%BC%20%EA%B0%96%EC%B6%98%20Wireguard%20Site2Site.png)
Wireguard와 연결된 네트워크에 있습니다.
Lan1:
10.240.0.0/24
via 10.100.1.1/32 on public static ip A.B.C.D/32
Lan2:
192.168.0.0/24
via 10.100.1.6/32 on dynamic ip from provider
10.240.0.0 넷은 여러 공용 서버에 대한 와이어가드 넷(wg0)이며 한 서버는 10.100.1.1이 포함된 특수 wg1 인터페이스가 있는 "게이트웨이"입니다. 따라서 게이트웨이에서 192.168.0.0 네트워크의 모든 노드에 연결할 수 있습니다. Lan2에서는 일부 서버가 있는 전형적인 로컬 네트워크입니다. 또한 해당 피어에서는 Lan1 뒤에 있는 모든 노드에 연결할 수 있습니다.
이제 "야생" 어딘가에 새로운 동료, 즉 모바일 사무실을 추가하고 싶습니다. 사용자는 동시에 Lan1과 Lan2에 액세스할 수 있어야 합니다(예: 10.240.0.0/24 및 192.168.0.0/24에 도달). 피어 자체는 예를 들어 Wireguard 클라이언트가 있는 휴대폰입니다.
Lan1 게이트웨이 wg1.conf
[Interface]
Address = 10.100.1.1/32
...
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE;
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE;
# road-warrior
[Peer]
PublicKey = ...
AllowedIps = 10.100.1.2/32
# Lan2 gateway
[Peer]
PublicKey = ...
AllowedIps = 10.100.1.6/32, 192.168.0.0/24
그리고 Lan2 호스트
[Interface]
Address = 10.100.1.6/32
...
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o ens18 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o ens18 -j MASQUERADE
# lan1_gate
[Peer]
PublicKey = ...
EndPoint = fqdn:port
AllowedIPs = 10.100.1.1/32, 10.240.0.0/24
lan2_gateway에 액세스할 수 없지만 lan1_gateway를 통해 lan2_gateway로 모든 트래픽 von 192.168.0.0을 라우팅하고 싶기 때문에 해당 휴대폰에서 lan1 게이트웨이의 피어만 정의할 수 있습니다.
[Interface]
Address = 10.100.1.2/32
...
[Peer]
PublicKey = ...
EndPoint = fqdn:port
AllowedIPs = 10.100.1.1/32, 192.168.0.0/24, 10.240.0.0/24
로드 워리어를 lan1과 연결하면 10.240.0.0/24에는 연결할 수 있지만 192.168.0.0에는 연결할 수 없습니다. 뭐가 잘못 되었 니? 192.168.0.0에서 10.100.1.6으로 트래픽을 전달하려면 lan1_gate에 또 다른 전달 규칙이 필요합니까? 그것은 이미 완료되었을 것입니다.
#> ip r s
default via 172.31.1.1 dev eth0 onlink
...
10.100.1.2 dev wg1 scope link
10.100.1.6 dev wg1 scope link
...
10.240.0.4 dev wg0 scope link
10.240.0.5 dev wg0 scope link
...
172.31.1.1 dev eth0 proto kernel scope link src A.B.C.D
192.168.0.0/24 dev wg1 scope link
어떤 아이디어가 있나요?
답변1
Lan1 게이트웨이 호스트에 추가 방화벽 규칙을 설정하지 않은 한, "road Warrior" 휴대폰의 트래픽은 휴대폰의 원래 WireGuard 소스 주소인 를 사용하여 Lan1 게이트웨이에서 Lan2 게이트웨이로 전달됩니다 10.100.1.2
. 따라서 AllowedIPs
Lan2 게이트웨이 호스트에 대한 WireGuard 구성 설정 에 전화기의 주소를 추가해야 합니다 .
AllowedIPs = 10.100.1.1/32, 10.100.1.2/32, 10.240.0.0/24
Lan2 게이트웨이는 패킷의 소스 주소가 이 AllowedIPs
설정에 포함되지 않은 경우 Lan1 게이트웨이와의 WireGuard 연결에서 수신하는 모든 패킷을 삭제합니다.