네트웍상에서 NAT 가 되는 방법에 대한 질문입니다.

trymp의 이미지

사용자망 ... -> NAT 장비... -> 인터넷
10.10.10.0/24=>10.10.10.254 ,,, 40.40.40.1 -> 인터넷

사용자망의 GW 주소 10.10.10.254
실제 NAT 되는 IP 40.40.40.1

이런식으로 NAT 가 된다고 할 때, NAT 장비에서 source IP NAT 를 걸어야 인터넷으로

나간 패킷이 다시 돌아와서 NAT 테이블보고 원복시켜서 사용자망으로 다시 돌아오는 것으로

알고 있습니다.

이때 사용자 PC 가 여러개이기에 구분을 해주기 위해서 source port 값을 변경하는 것으로 알고 있습니다.

TCP 나 UDP 는 포트정보가 있기에 가능하지만 ICMP 패킷은 어떻게 구별하나요?

사용자 PC에 10.10.10.1 과 10.10.10.2 가 동시에 같은 서버로 ping 을 쏜다고 할때,

NAT 장비에서는 어떤식으로 구분해 주는지 알고 싶습니다.

고수님들의 조언 부탁드립니다.

elflord의 이미지

ICMP의 경우에는 포트 번호대신 ICMP의 ID를 이용합니다. (RFC3022참조)
다만 구형 루터의 경우 ICMP에 대응하지 않거나 독자적인 방법을 이용하는 경우도 있었습니다.-

===== ===== ===== ===== =====
그럼 이만 총총...[竹]
http://elflord.egloos.com


===== ===== ===== ===== =====
그럼 이만 총총...[竹]
http://elflord.egloos.com

trymp의 이미지

한번 tcpdump 로 확인해 봐야 겠네요.