![iptables를 사용하여 VPN 호스트를 통해 들어오고 나가는 트래픽을 라우팅하는 방법](https://linux55.com/image/175980/iptables%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20VPN%20%ED%98%B8%EC%8A%A4%ED%8A%B8%EB%A5%BC%20%ED%86%B5%ED%95%B4%20%EB%93%A4%EC%96%B4%EC%98%A4%EA%B3%A0%20%EB%82%98%EA%B0%80%EB%8A%94%20%ED%8A%B8%EB%9E%98%ED%94%BD%EC%9D%84%20%EB%9D%BC%EC%9A%B0%ED%8C%85%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
Raspberry Pi를 통해 네트워크로 트래픽을 라우팅하고 다른 네트워크에 있는 게임 서버를 실행하는 PC로 트래픽을 라우팅하려고 합니다. Raspberry Pi는 OpenVPN을 호스팅하고 내 컴퓨터는 여기에 연결하여 10.8.0.2의 고정 IP를 얻을 수 있습니다. 나는 사용해 보았습니다.
iptables -t nat -A PREROUTING -p udp --dport 7777 -j DNAT --to-destination 10.8.0.2:7777
iptables -t nat -A POSTROUTING -j MASQUERADE
그런데 서버에 연결하려고 하면 연결 시간 초과 오류가 발생합니다. 또한 서버의 쿼리 포트인 포트 27015를 사용하여 첫 번째 명령을 실행했습니다. 나는 이 분야에 매우 익숙하지 않기 때문에 아마도 내가 무엇을 하고 있는지 모를 것입니다.
답변1
이러한 리디렉션을 위해서는 다음이 필요합니다.
- DNAT 규칙(귀하가 소유함)
- 전달을 허용하는 규칙(
FORWARD
체인 내) - 라우팅을 활성화해야 합니다(
sysctl
,net.ipv4.ip_forward = 1
).
tcpdump
리디렉션된 패킷이 시스템을 떠났는지 여부를 확인하는 데 사용됩니다 .