NAT 종류에 대한 질문입니다
글쓴이: nanosecond / 작성시간: 화, 2009/11/24 - 11:20오전
안녕하세요
네트워크 공부를 갓 시작한 초보자입니다.
지금 공부중인 것이 NAT 구성에 관한 것인데요.
인터넷에서 NAT 종류에 대해서 검색을 해봤는데요.
크게 SNAT와 DNAT 두가지가 있던데요
어떤 글에서는 Static NAT와 Dynamic NAT라고 구분지었고
어떤 글에서는 Source NAT와 Destination NAT라고 구분해 놨더라구요;;
Static NAT와 Source NAT, 그리고 Dynamic NAT와 Destination NAT가 같은 말인가요? 다른 말인가요?
그리고 masquearade만으로 모든 NAT 설정이 가능한지요?
Forums:
Static NAT와 Dynamic NAT의
Static NAT와 Dynamic NAT의 구분이라... 저는 처음 듣는군요.
어느 문서가 그렇게 구분해 놓은 건지 알려주실 수 있나요?
SNAT과 DNAT은
Source와 Destination 으로 압니다. 말그대로 출발지와 목적지 IP
^^
----------------------------------------------------
Linux!! 니가 이기나 내가 이기나 끝까지 가봐야 안다!!
제가 아는 범위에서
제가 아는 범위에서 말씀드리자면
마스쿼레이드는 NAT의 한 부분이라고 알고 있습니다.
저도 마스쿼레이드와 NAT의 차이점이 무엇일까가 궁금하여 검색을 많이 해보았지만
그냥 마스쿼레이드는 DHCP환경에서 사용하고 NAT는 고정ip환경에서 사용한다는것밖에 알아내지 못했습니다.
그래서 제가 내린 결론은 iptables에서 마스쿼레이드로 하게 되면 dhcp ip가 변경되도 자동으로 그 ip를 타고
나가도록 하게 된다라고 생각했습니다.
그리고 NAT는 크게 Source NAT(SNAT)과 Destination NAT(DNAT)이 있는데
SNAT은 출발지를 변경시키는 것 이고 DNAT은 목적지를 변경시키는 것 입니다.
가령 님이 회사 내 사설ip를 가지고 있는 pc가 인터넷이 되게 하려면 SNAT을 사용하는 것 이고
회사 내 웹서버를 사설로 설정하여 운영하고 싶다면 DNAT을 이용하면 됩니다.
마지막으로 Static NAT과 Dynamic NAT은 Static NAT은 말 그대로 고정된 NAT입니다.
사설 192.168.0.0/24 는 123.123.123.5로 SNAT을 해라.
( iptables -t nat -I POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 123.123.123.5 )
와 같은 것 이고
Dynamic NAT은 동적으로 NAT하라는 것 입니다.
192.168.0.0/24는 123.123.123.1~10까지 대역으로 NAT해라 와 같이 쓰일 수 있겠지요
( iptables -t nat -I POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 123.123.123.1-123.123.123.10 )
SNAT과 DNAT은 Source NAT, Destination NAT이지 Static NAT, Dynamic NAT은 아닌걸로 알고 있습니다.
( SLB도 Dynamic NAT에 들어갈 수 도 있겠다는 생각이 드네요.. )
저도 이 부분에 궁금한점이 많아 예전에 검색해봤던 것들을 기억을 더듬어 답변을 답니다..
아마 틀린부분도 있을거라 생각이 드네요..
정리하자면......
Source NAT :
IP address 는 하나의 패킷 안에 Destination IP address 와 Source IP address 가 같이 적혀 있는데 이중에 Source IP address를 Translation (뭐, 주소를 바꿔치기 한다 그말입죠) 하는 기술을 말합니다. 방화벽을 예로 들자면 사설 IP 대역인 방화벽 안쪽에서 공인 IP 대역인 인터넷의 어느 서버로 패킷을 보낸다면, Source IP address를 사설 ip 인 채로 보내면, 돌아올 때 엉뚱한 데로 가게 되겠죠. 그래서 source ip address를 내가 속한 네트워크를 막아주고 있는 방화벽의 공인 IP로 바꾸어서 보내는 겁니다. 그러면 돌아올 때, 내가 속한 방화벽까지는 올테고, 방화벽이 내부의 사설 IP 대역을 알고 있는데다, 내가 보낸 세션 정보도 NAT 테이블을 통해 저장하고 있다가 연결해 주는 것입죵. 넹.
Destination NAT :
간단한 예로, 내가 방화벽 내에 서버를 하나 가지고 있다고 해보죠. 그러니까 방화벽 내의 내 서버는 사설 IP 주소를 가지고 있겠지요. 그런데 서버란 서비스를 해야 서버죠. 그러니 누군가 인터넷으로부터 들어와야 되는 것입죠. 그런데, 사설 IP 대역에 들어있는 내 서버에 어떻게 들어올 수 있냐? 이겁니다. 그래서 방화벽에 공인 IP 주소를 부여하고 인터넷 사용자들이 해당 공인 IP 주소를 Destination IP address 로 해서 패킷을 보내면 방화벽에서 Destination IP address 를 사설 IP 대역의 내 서버로 바꾸어서 전달하는 겁니다. 요럴 때, Destination IP address 를 설정해 주어야 하겠죠. Source IP address를 이해하셨으면 이것도 바로 이해하셨을 테니 요기서 스톱 앤 넥스트.
Static NAT :
고정된 NAT라고 번역할 수 있을 듯. 그러니깐, IP 주소의 변환이 항상 같은 주소로 변환되는 것을 말합니다. 1:1 NAT라고 하는 게 예가 되겠죠.
Dynamic NAT :
변동하는 NAT라고 할 수 있겠죠? 예를 들어 공인 IP 주소를 C-class 하나 받았다고 하죠. 그리고 방화벽 내부의 사설 IP를 쓰는 사용자에게 인터넷을 사용할 수 있도록 허용한다고 합시다. 그런데 그 사용자에게 꼭 공인 IP 주소를 배정해야 할까요? 아니지요. 귀찮잖아요. 그냥 아무 공인 IP나 C-clsas 중 하나 (엄밀히 말하면 C-class 전부를 사용할 수는 없젰지만) 아무거나 쓰면 되지요. 남들이 안쓰고 있는 걸루다. 그럴 때, Dynamic NAT를 사용합니다. 내부 사설 IP 대역의 사용자가 어떤 사설 IP 주소를 가지고 있든지, 인터넷으로 패킷을 보낼 때는 적당히 C-class 의 공인 IP 주소 중 남이 쓰고 있지 않은 주소를 하나 물고 나가는 겁니다. 그러니 사용할 때마다 매칭되는 IP 주소가 달라질 수 있지요.
정리들이 되셨을지요.
손아파요. 이만 총총.
캬...
너무나 깔끔한 설명에 감탄합니다. 덕분에 저 4가지의 NAT가 다 다르다는 것을 확실히 인지하고 갑니다~
댓글 달기