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