iptables를 통해 IP를 매핑하는 방법은 무엇입니까?

iptables를 통해 IP를 매핑하는 방법은 무엇입니까?

네트워크 네임스페이스를 생성합니다.

이 네임스페이스에서 nginx를 엽니다.

이제 172.17.0.2를 통해 웹 서버에 액세스할 수 있습니다.

내가 하고 싶은 것은 이 IP를 127.0.0.1에 매핑하는 것입니다.

127.0.0.1에 액세스하고 웹 서버(172.17.0.2)에 연결하고 싶다고 가정해 보겠습니다.

나는 다음과 같이 iptables를 사용하려고합니다.

iptables -t nat -A PREROUTING -d 127.0.0.1  -p tcp --dport 80 -j  DNAT --to-destination  172.17.0.2:80

iptables -t nat -A PREROUTING -p tcp --dport 80 -j  DNAT --to-destination  172.17.0.2:80

nginx에 연결하기 위해 여전히 127.0.0.1에 액세스할 수 없습니다.

그럼 어떤 아이디어라도 있나요?

답변1

이 규칙은 OUTPUT 체인에 배치되어야 합니다.

iptables -t nat -A OUTPUT -d 127.0.0.1 -p tcp --dport 80 -j DNAT --to-destination 172.17.0.2:80

확인하다6장 테이블과 체인 순회

"iptables 튜토리얼"http://rlworkman.net/howtos/iptables/iptables-tutorial.html

다음을 통해 어떤 체인을 사용할지 결정하는 것도 쉽습니다.

http://rlworkman.net/howtos/iptables/images/tables_traverse.jpg

관련 정보