SNAT와 가장 무도회의 실제 차이점은 무엇입니까?
로컬 네트워크에서 인터넷 연결을 공유하려면 SNAT를 선택해야합니까, 가장 무도회를 선택해야합니까?
SNAT와 가장 무도회의 실제 차이점은 무엇입니까?
로컬 네트워크에서 인터넷 연결을 공유하려면 SNAT를 선택해야합니까, 가장 무도회를 선택해야합니까?
답변:
SNAT
대상은 모든 나가는 패킷에 적용 할 IP 주소를 제공하도록 요구합니다. MASQUERADE
대상은 그것을 인터페이스를 제공 할 수 있으며 해당 인터페이스에 어떤 주소 모든 나가는 패킷에 적용되는 주소입니다. 또한으로 SNAT
커널의 연결 추적은 인터페이스가 중단되고 다시 시작될 때 모든 연결을 추적합니다. MASQUERADE
대상의 경우도 마찬가지입니다 .
좋은 문서는 Netfilter 사이트 의 하우투 와 iptables
매뉴얼 페이지를 포함 합니다.
-j SNAT
하면 (재활용 추적과 달리) 글리치가 발생한다고 생각 -j MASQUERADE
합니다. 이 경우 이전 발신 연결에서 들어오는 패킷이 TCP 스택과 혼동되어 노드로 전송되는 것을 상상할 수 있습니다. -j SNAT의 이점에 대해 NAT 상자가 동일한 외부 IP 주소로 구성되고 커널이 RST로 응답하는 대신 이전 연결에서 패킷을 계속 전달하면 어떻게됩니까?
기본적 SNAT
와 MASQUERADE
POSTROUTING 체인 내에서 NAT 테이블에 동일한 소스 NAT의 일을.
차이점
MASQUERADE
--to-source
동적으로 할당 된 IP와 작동하도록 만들어 졌으므로 필요하지 않습니다
SNAT
정적 IP에서만 작동합니다. --to-source
MASQUERADE
추가 오버 헤드가 있으며 대상이 패킷에 도달 SNAT
할 때마다 MASQUERADE
사용하는 IP 주소를 확인해야하기 때문에 속도가 느립니다 .
참고 : 일반적인 사용 사례 MASQUERADE
: VPC의 AWS EC2 인스턴스, VPC CIDR 내에 프라이빗 IP (예 : 10.10.1.0/24)-10.10.1.100 (예 : 10.10.1.100)과 통신 할 수있는 퍼블릭 IP가 있습니다. 개인 IP 1 : 1 NAT를 통한 인터넷 (공용 서브넷에 있다고 가정). 퍼블릭 IP는 인스턴스 재부팅 후 (EIP가 아닌 경우) 변경 될 수 있으며이 MASQUERADE
사용 사례에서 더 나은 옵션입니다.
중요 : MASQUERADE
고정 IP로 대상 을 사용하는 것은 여전히 가능 하며 추가 오버 헤드를 알고 있어야합니다.
참고 문헌