다른 인터페이스의 서버로 패킷 리디렉션

다른 인터페이스의 서버로 패킷 리디렉션

좋아요, 조금 복잡하지만 이것이 제가 필요한 것입니다.

IP 172.24.229.62를 사용하는 ZeroTier 네트워크에 Minecraft 서버가 있고 포트 25565에서 연결을 허용합니다. ZeroTier라는 사실은 특별히 중요하지 않습니다. 그냥 일반 LAN인 척하면 됩니다.

동일한 네트워크의 LAN(ZeroTier) 측에 IP가 172.24.229.65인 일반 Azure 서버가 있습니다. LAN은 인터넷에 연결되어 있지 않으며 다른 장치가 없습니다. 범용 서버는 Ubuntu Server 20.10을 실행하며 다른 인터페이스를 통해 인터넷에 노출되어 포트 25565의 연결을 허용합니다.

인터넷 측 포트 25565에서 들어오는 패킷을 LAN 측 Minecraft 서버의 포트 25565로 리디렉션하고 패킷을 다시 보내려면 이 범용 서버가 필요합니다.

SE에서 이 스크립트를 찾아서 시도했지만 작동하지 않았습니다. 내가 뭘 잘못했나요?

#!/bin/sh

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -F
iptables -t nat -F
iptables -X

iptables -t nat -A PREROUTING -p tcp --dport 25565 -j DNAT --to-destination 172.24.229.62:25565
iptables -t nat -A POSTROUTING -p tcp -d 172.24.229.62 --dport 25565 -j SNAT --to-source 172.24.229.65

답변1

거의 다 왔어, 친구. 유일하게 누락된 부분은 Minecraft 서버의 기본 게이트웨이를 구성하는 것입니다. 이 경우 Ubuntu Universal Server가 게이트웨이 역할을 합니다. Minecraft 서버에서 다음 명령을 실행합니다.

$ sudo ip route add default via 172.24.229.65

관련 정보