일대일 가상 IP 변환

일대일 가상 IP 변환

LAN IP로 변환하고 싶은 WAN IP가 많지만 일부 포트만 엽니다. 내가 변환하려는 WAN IP는 라우터가 인터넷에 연결하는 데 사용하는 기본 WAN IP가 아닙니다.

예를 들어 WAN IP 216.58.216.238을 LAN IP 10.10.10.10으로 변환하고 포트 80 및 443을 열고 싶습니다.

처음에는 ifconfig다음 인터페이스가 표시됩니다 : br0, eth0, eth1, eth2, lo, vlan1.vlan2

vlan2내 외부 IP 주소가 할당되어 있습니다.

번역은 어떻게 해야 하나요?

이것이 내가 지금까지 시도한 것입니다:

ifconfig eth0:1 216.58.216.238 netmask 255.255.255.0 up
iptables -t nat -A PREROUTING -i eth0 -d 216.58.216.238 -p tcp --dport 80 -j DNAT --to-destination 10.10.10.10:80
iptables -t nat -I POSTROUTING -s 10.10.10.10 -j SNAT --to 216.58.216.238

하지만 그건 작동하지 않는 것 같습니다. 포트 216.58.216.238:80을 사용하는 외부 네트워크에서 10.10.10.10:80의 서비스에 액세스할 수 없습니다.

재부팅 후 실행하면 ifconfig몇 가지 추가 인터페이스가 표시됩니다. 예를 들어: eth0:1. eth0및 와 동일한 HWaddr이 있고 vlan2에 올바른 외부 IP 주소가 할당되어 있지만 inet addr여전히 네트워크 외부에서 장치를 볼 수 없습니다.

실행하면 iptables -t nat -vnL뭔가 등록된 것 같습니다. 예를 들어 다음과 같습니다.

Chain PREROUTING (policy ACCEPT 5212 packets, 475K bytes)
pkts bytes target prot opt in    out  source      destination
...
0    0     DNAT   tcp  --  eth0  *    0.0.0.0/0   216.58.216.238     tcp dpt:80 to 10.10.10.10:80
...

액세스를 허용하려면 무엇을 변경해야 하는지에 대한 아이디어가 있습니까?

편집하다.

다음 명령을 사용하여 서비스가 작동하도록 할 수 있지만 모든 포트가 통과하도록 허용합니다. iptables에는 스위치와 옵션이 너무 많습니다.

ifconfig eth0:1 216.58.216.238 netmask 255.255.255.0
iptables -t nat -I PREROUTING -d 216.58.216.238 -j DNAT --to 10.10.10.10
iptables -t nat -I POSTROUTING -s 10.10.10.10 -j SNAT --to 216.58.216.238

관련 정보