¸®´ª½º 2.4 NAT ÇÏ¿ìÅõ
Rusty Russell, mailing list netfilter@lists.samba.org
v1.0 Tue Mar 21 17:06:19 EST 2000
ÀÌ ¹®¼´Â 2.4 ¸®´ª½º Ä¿³Î¿¡¼ ¾î¶»°Ô ¸¶½ºÄõ·¹À̵ù, Åõ¸íÇÑ ÇÁ·Ï½Ã, Æ÷Æ®
Æ÷¿öµå ±×¸®°í ´Ù¸¥ ³Ý¿öÅ© Áּҹٲٱ⸦ ¾î¶»°Ô ÇÏ´ÂÁö¸¦ ¼³¸íÇÑ´Ù.
______________________________________________________________________
¸ñÂ÷
1. ¼Ò°³AID CDATA intro(LABEL)LABEL
2. ¾îµð¿¡ °ø°ø À¥ »çÀÌÆ®¿Í ¸®½ºÆ®°¡ ÀÖÀ»±î¿ä ?
2.1 NAT °¡ ¹»±î¿ä ?
2.2 ¿Ö NAT¸¦ »ç¿ëÇÒ·Á°í ÇÒ±î¿ä ?
3. µÎ°¡Áö ÇüÅÂÀÇ NAT
4. 2.0, 2.2 Ä¿³Î·ÎºÎÅÍÀÇ ºü¸¥ Àüȯ
4.1 ³ª´Â ´ÜÁö ¸¶½ºÄõ·¹À̵ù Çϱ⸸ ¿øÇÑ´Ù... µµ¿ÍÁÒ..
4.2 ipmasqadmÀº ¾î¶»ÇÏÁÒ ?
5. NAT Á¶ÀýÇϱâ
5.1 iptables »ç¿ëÇÒ¶§ÀÇ ´Ü¼øÇÑ ¼±ÅÃ
5.2 ¾î¶°ÇÑ ÆÐŶÀ» Á¶ÀÛÇÒ °ÍÀÎÁö, ¼¶¼¼ÇÑ ¼±ÅÃ
6. ÆÐŶÀ» ¾î¶»°Ô Á¶ÀÛÇÒÁö¸¦ ¾Ë·ÁÁÖ±â
6.1 ½ÃÀÛÁ¡ NAT
6.1.1 ¸¶½ºÄõ·¹À̵ù
6.2 ¸ñÀûÁö NAT
6.2.1 ¹æÇâ Àç¼³Á¤
6.3 Mappings In Depth
6.3.1 ¹üÀ§·Î ´Ù¼öÀÇ ÁÖ¼Ò¸¦ ¼±ÅÃÇϱâ
6.3.2 Creating Null NAT Mappings
6.3.3 ±âº»ÀûÀÎ NAT Çൿ¾ç½Ä
6.3.4 Implicit Source Port Mapping
6.3.5 NAT °¡ ½ÇÆÐÇßÀ» °æ¿ì ¾î¶²ÀÏÀÌ »ý±æ±î¿ä ?
6.3.6 º¹¼öÀÇ ¼³Á¤, Áߺ¹, Ãæµ¹
6.3.7 Áö¿ªÀûÀ¸·Î »ý¼ºµÈ Á¢¼ÓÀÇ ¸ñÀûÁö¸¦ º¯°æÇϱâ
7. Ư¼öÇÑ ÇÁ·ÎÅäÄÝ
8. NAT ¿¡ ´ëÇÑ °æ°í
9. °¨»çÀÇ ¸»¾¸
______________________________________________________________________
1. ¼Ò°³
¾äÀüÇÑ µ¶ÀÚ ¿©·¯ºÐ, ȯ¿µÇÕ´Ï´Ù.
¿©·¯ºÐÀº ȯ»óÀûÀÎ (±×¸®°í °¡²û ¹«½Ã¹«½ÃÇÑ) NATÀÇ ¼¼»óÀ¸·Î ºüÁ®µé°Ô µÇ
¾ú½À´Ï´Ù. ³×Æ®¿öÅ© ÁÖ¼Ò ¹ø¿ª(Network Address Translation, NAT), ±×¸®°í
ÀÌ ÇÏ¿ìÅõ´Â 2.4 ¸®´ª½º Ä¿³ÎÀÇ ¼¼¹ý Á¤È®ÇÑ °¡À̵尡 µÇ¾î ÁÙ °ÍÀÔ´Ï´Ù.
¸®´ª½º 2.4¿¡¼ ÆÐŶÀ» Á¶ÀÛÇÏ´Â ±â¹Ý±¸Á¶¸¦ '³ÝÇÊÅÍ(netfilter)¶ó°í ÇÕ
´Ï´Ù. ÀÌ°ÍÀÇ ÃÖ»óÀ§¿¡ NAT°¡ ÀÖ°í ÀÌ°ÍÀº ÀÌÀü Ä¿³Î·Î ºÎÅÍ ¿ÏÀüÈ÷ ÀçÀÌÇà
µÇ¾ú½À´Ï´Ù.
2. ¾îµð¿¡ °ø°ø À¥ »çÀÌÆ®¿Í ¸®½ºÆ®°¡ ÀÖÀ»±î¿ä ?
¼¼°³ÀÇ °ø°ø À¥ »çÀÌÆ®°¡ ÀÖ½À´Ï´Ù.
o Thanks to Penguin Computing
.
o Thanks to The Samba Team and SGI .
o Thanks to Jim Pick .
°ø°øÀÇ ³ÝÇÊÅÍ ¸ÞÀϸµ ¸®½ºÆ®´Â Samba's Listserver
.
2.1. NAT °¡ ¹»±î¿ä ?
Á¤»óÀûÀ¸·Î ÆÐŶÀº ±×°ÍÀÇ ½ÃÀÛÁ¡¿¡¼ ºÎÅÍ ¸ñÀûÁö±îÁö ¸¹Àº ´Ù¸¥ ¸µÅ©¸¦
°æÀ¯ÇÏ°Ô µË´Ï´Ù. ³»°¡ÀÖ´Â ¿À½ºÆ®·¼¸®¾Æ¿¡¼´Â ¾à 19°³¸¦ °ÅÄ¡´Â ±º¿ä. ÀÌ
µé ¸µÅ©Áß ¾î¶²°Íµµ ¿©·¯ºÐÀÇ ÆÐŶÀ» ½ÇÁ¦·Î º¯°æÇÏÁö´Â ¾Ê½À´Ï´Ù. ´ÜÁö ÀÌ
°ÍÀ» Á¦ ¹æÇâÀ¸·Î º¸³»Áֱ⸸ ÇÕ´Ï´Ù.
ÀÌ·¯ÇÑ ¸µÅ©Áß NAT¸¦ »ç¿ëÇÏ´Â °÷À» ¸¸³ª¸é ÀÌ ÆÐŶÀº ±× ½ÃÀÛÁ¡À̳ª ¸ñÀû
Áö°¡ Áö³ª´Â µ¿¾È º¯ÈµÇ°Ô µÈ´Ù. ÁüÀÛÇÏ°ÚÁö¸¸, ÀÌ°ÍÀº ½Ã½ºÅÛÀÌ ÀÛµ¿ÇÏ
´Â ¹æ½ÄÀÌ ¾Æ´Ï´Ù. ±×·¡¼ NAT´Â ¾ðÁ¦³ª crock °°Àº °ÍÀÌ´Ù. ÀϹÝÀûÀ¸·Î
NAT¸¦ ½ÇÇàÇÏ´Â ¸µÅ©´Â ÆÐŶÀ» ¾î¶»°Ô Á¶ÀÛÇß´ÂÁö¸¦ ±â¾ïÇϸç ÀÀ´ä ÆÐŶ
ÀÌ Áö³ª°¥¶§ ±× ÀÀ´äÆÐŶÀ» ¿ø·¡´ë·Î µÇµ¹·Á ¸ðµç ÀÛµ¿ÀÌ °¡´É Çϵµ·Ï ÇÑ
´Ù.
2.2. ¿Ö NAT¸¦ »ç¿ëÇÒ·Á°í ÇÒ±î¿ä ?
¿Ïº®ÇÑ ¼¼»ó¿¡¼´Â ¿©·¯ºÐÀº »ç¿ëÇÏ·Á ¾ÊÀ» °ÍÀÔ´Ï´Ù. ±×·¯³ª ÁÖ ÀÌÀ¯´Â
´ÙÀ½°ú °°½À´Ï´Ù.
ÀÎÅͳݿ¡ ¸ðµ©À¸·Î ¿¬°á
¿©·¯ºÐÀÌ ¸ðµ©Á¢¼ÓÇÏ¿´À»¶§ ´ëºÎºÐÀÇ ISPµéÀº ÇϳªÀÇ IP ÁÖ¼Ò¸¦
ºÎ¿©ÇÕ´Ï´Ù. ¿©·¯ºÐÀº ¾î¶°ÇÑ ½ÃÀÛÁ¡ÀÇ ÁÖ¼Ò¿¡¼µµ ÆÐŶÀ» º¸³¾ ¼ö
ÀÖ½À´Ï´Ù¸¸ ÀÌ ½ÃÀÛÁ¡ÀÇ IP ÁÖ¼Ò¿¡¼ º¸³»Áø ÆÐŶ¿¡°Ô¸¸ ÀÀ´äÀÌ ÀÖÀ»
°ÍÀÔ´Ï´Ù. ¿©·¯ºÐÀÌ ¿©·¯°³ÀÇ ´Ù¸¥ ±â°è(Ȩ ³×Æ®¿ö±×¿¡¼Ã³·³)¿¡¼
ÀÌ ÇϳªÀÇ ¸µÅ©¸¦ ÅëÇÏ¿© ÀÎÅͳݿ¡ Á¢¼ÓÇϱ⸦ ¿øÇÑ´Ù¸é NAT°¡
ÇÊ¿äÇÒ °ÍÀÔ´Ï´Ù.
ÀÌ°ÍÀÌ ¿äÁò NAT¸¦ »ç¿ëÇÏ´Â °¡Àå ÈçÇÑ ÀÌÀ¯ÀÌ°í ¸®´ª½º ¼¼»ó¿¡¼´Â
¿Ö³ÄÇϸé ù¹ø° ÆÐŶÀÇ ½ÃÀÛÁ¡ ÁÖ¼Ò¸¦ ¹Ù²Ù´Â °ÍÀ̱⠶§¹®ÀÔ´Ï´Ù.
º¹¼öÀÇ ¼¹öµé
°¡²û ¿©·¯ºÐÀÇ ³×Æ®¿öÅ©·Î °¡´Â ÆÐŶÀÇ ¹æÇâÀ» ¹Ù²Ù°íÀÚ ÇÒ
°ÍÀÔ´Ï´Ù. Á¾Á¾ ÀÌ°ÍÀº (À§¿¡¼ ±â¼úÇßµíÀÌ) ¿©·¯ºÐÀº ÇϳªÀÇ IP
ÁÖ¼Ò¸¦ °¡Áö°í ÀÖÁö¸¸ ¿©·¯ºÐÀÇ ÇϳªÀÇ ½ÇÁ¦ IP ÁÖ¼Ò µÚ¿¡
¿©·¯»ç¶÷ÀÌ Âü¿©ÇÏ°íÀÚ ÇÒ ¶§ÀÔ´Ï´Ù. ¿©·¯ºÐÀÌ µé¾î¿À´Â ÆÐŶÀÇ
¸ñÀûÁö¸¦ ´Ù½Ã °íÃÄÁÜÀ¸·Î ÀÌ·¯ÇÑ°ÍÀ» ÇÒ¼ö ÀÖ½À´Ï´Ù.
ÀÌ°ÍÀÇ ÀϹÝÀûÀÎ º¯ÇüÀº ºÎÇϺлêÀ¸·Î, ¿©·¯´ëÀÇ ±â°è°¡ ¹°·ÁÀÖÀ»¶§
ÆÐŶÀ» À̵鿡°Ô·Î ³ª´©¾î ÁÖ´Â °ÍÀÔ´Ï´Ù. ÀÌ·¯ÇÑ ÇüÅÂÀÇ NAT¸¦ ÀÌÀü
¹öÀüÀÇ ¸®´ª½º¿¡¼´Â Æ÷Æ® Æ÷¿öµùÀ̶ó°í ÇÏ¿´½À´Ï´Ù.
Åõ¸íÇÑ ÇÁ·Ï½Ã (Transparent Proxying)
°¡²û ¿©·¯ºÐÀÇ ¸®´ª½º ¹Ú½º¸¦ Áö³ª°¡´Â ÆÐŶÀÌ ¸®´ª½º ¹Ú½º ÀÚüÀÇ
ÇÁ·Î±×·¥À¸·Î ÇâÇϵµ·Ï ÇÏ´Â °ÍÀ» ÁÁ¾ÆÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀ»
»ç¿ëÇÏ´Â °ÍÀº Åõ¸íÇÑ ÇÁ·Ï½Ã¸¦ ¸¸µå´Â °ÍÀ¸·Î ÀÌ ÇÁ·Ï½Ã´Â
¹Ù±ù¼¼»ó°ú ¿©·¯ºÐÀÇ ³×Æ®¿öÅ©»çÀÌ¿¡ Á¸ÀçÇÏ´Â ÇÁ·Î±×·¥À¸·Î ÀÌ
µÑ»çÀÌÀÇ Åë½ÅÀ» ¼ÓÀÌ´Â °ÍÀÔ´Ï´Ù. ÀÌ°ÍÀÌ Åõ¸íÇÏ´Ù´Â °ÍÀº ¿©·¯ºÐÀÇ
³×Æ®¿öÅ©´Â ÀÌ ÇÁ·Ï½Ã°¡ ÀÛµ¿ÇÏÁö ¾Ê±â Àü±îÁö´Â ÇÁ·Ï½Ã¸¦ ÅëÇؼ
Åë½ÅÀÌ ÀÌ·ç¾îÁø´Ù´Â °ÍÀ» ¾Ë¼ö ¾ø±â ¶§¹®ÀÔ´Ï´Ù.
Squid´Â ÀÌ·±½ÄÀ¸·Î À嵿Çϵµ·Ï ¼³Á¤µÉ¼öÀÖ°í ÀÌ°ÍÀ» ÀÌÀüÀÇ ¸®´ª½º
¹öÀü¿¡¼´Â Åõ¸íÇÑ ÇÁ·Ï½Ã ¶Ç´Â ¹æÇâÀç¼³Á¤(redirection)À̶ó°í
ºÒ·¶½À´Ï´Ù.
3. µÎ°¡Áö ÇüÅÂÀÇ NAT
³ª´Â NAT¸¦ µÎ°¡ÁöÀÇ ´Ù¸¥ ÇüÅ·Π±¸ºÐÇÏ¿´½À´Ï´Ù.: ½ÃÀÛÁ¡ NAT(Source
NAT) (SNAT) and ¸ñÀûÁö NAT(Destination NAT) (DNAT).
Source NAT Àº ù ÆÐŶÀÇ ½ÃÀÛÁ¡ÁÖ¼Ò¸¦ º¯°æÇÒ¶§ÀÌ´Ù. Áï, µé¾î¿À´Â Á¢¼ÓÀ»
º¯°æÇÏ´Â °ÍÀÌ´Ù. Source NAT´Â ¾ðÁ¦³ª ¶ó¿ìÆÃÈÄ¿¡ ÀÌ·ç¾îÁö°í ÆÐŶÀÌ
¹Ù±ùÀ¸·Î ³ª°¡±â Á÷Àü¿¡ ÀÌ·ç¾î Áø´Ù. ¸¶½ºÄõ·¹À̵ùÀº SNAT ÀÇ Æ¯º´ÇÑ
ÇüÅÂÀÌ´Ù.
Destination NAT Àº ù ÆÐŶÀÇ ¸ñÀûÁö ÁÖ¼Ò¸¦ º¯°æÇÒ¶§ÀÌ´Ù. Áï, Á¢¼ÓÀÌ
¾îµð·Î ÇâÇÏ´ÂÁö¸¦ º¯°æÇÒ¶§ ÀÌ´Ù. Destination NATÀº ¾ðÁ¦³ª ¶ó¿ìÆÃÀÌÀü¿¡
ÀÌ·ç¾îÁö°í ÆÐŶÀÌ Ã³À½À¸·Î µé¾î¿ÔÀ»¶§ ÀÌ·ç¾î Áø´Ù. Æ÷Æ® Æ÷¿öµù,
ºÎÇϺлê, ±×¸®°í Åõ¸íÇÑ ÇÁ·Ï½Ã°¡ ¸ðµÎ°¡ DNATÀÇ ÇüÅÂÀÌ´Ù.
4. 2.0, 2.2 Ä¿³Î·ÎºÎÅÍÀÇ ºü¸¥ Àüȯ
¾ÆÁ÷ 2.0 (ipfwadm)¿¡¼ 2.2 (ipchains)·ÎÀÇ ÀüȯÀÇ ¼îÅ©¿¡ ºüÁ® ÀÖ´Â
»ç¶÷¿¡°Ô´Â ¹Ì¾ÈÇÏ´Ù. ÁÁÀº ´º½º¿Í ³ª»Û ´º½º°¡ ÀÖ´Ù.
ÀÌÀü´ë·Î ipchains¿Í ipfwadmÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÀÌ·¸°Ô ÇϱâÀ§Çؼ´Â
´Ü¼øÈ÷ ³ÝÇÊÅÍÀÇ ¹èÆ÷ÆÇ¿¡ Æ÷ÇÔµÇÀÖ´Â 'ipchins.o' ³ª 'ipfwadm.o' Ä¿³Î
¸ðµâÀ» »ðÀÔÇϱ⸸ ÇÏ¸é µÈ´Ù. À̵éÀº ¼·Î ȣȯµÇÁö ¾Ê´Â´Ù. ±×¸®°í ¾î¶²
´Ù¸¥ ³ÝÇÊÅÍ ¸ðµâ°úµµ ÇÔ²² »ç¿ëµÉ ¼ö ¾ø´Ù.
ÀÌµé ¸ðµâÀÌ Çѹø ¼³Ä¡µÇ°í ³ª¼´Â ´ÙÀ½°ú °°Àº Â÷ÀÌÁ¡ ¿Ü¿¡´Â Á¤»óÀûÀ¸·Î
ipchains¿Í ipfwadmÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù.
o ipchains ÀÇ -M -S ³ª ipfwadm ÀÇ -M -s ¿Í °°Àº ¸¶½ºÄõ·¹À̵ù ŸÀӾƿô
¼ÂÆÃÀº ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇϸé ÀÌ Å¸ÀӾƿôÀº NAT ÀÇ ³»ºÎ±¸Á¶ÀÇ
½Ã°£º¸´Ù ±æ±â ¶§¹®ÀÔ´Ï´Ù. ±×·¸´õ¶óµµ »ó°ü¾øÁÒ.
o verbose ¸¶½ºÄõ·¹ÀÌµå ¸®½ºÆÃÀÇ init_seq, delta, previous_delta ´Â
¾ðÁ¦³ª
o ÀÛµ¿ÇÏÁö ¾Ê½À´Ï´Ù. Ä«¿îÅÍ°¡ '0'À¸·Î µÇÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù.
ÇØÄ¿µéÀº ´ÙÀ½¿¡µµ ÁÖÀÇÇÏ¿©¾ß ÇÕ´Ï´Ù.
o ¸¶½ºÄõ·¹À̵ù Áß¿¡µµ 61000-65095 Æ÷Æ®¸¦ ¹¶Ä¥¼ö ÀÖ½À´Ï´Ù.
¸¶½ºÄõ·¹À̵ù ÄÚµå´Â ÀÌ ¹üÀ§¸¦ °ÔÀÓÀ¸·Î ¿©±é´Ï´Ù. ±×·¯¹Ç·Î
ÇÁ·Î±×·¥Àº ÀÌ°ÍÀ» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
o (ÀÌÀü¿¡ ±â·ÏµÇ¾ú´ø) Åõ¸íÇÑ ÇÁ·Ï½Ã¿¡¼ ½ÇÁ¦ ¿¬°á ¸ñÀûÁö¸¦ ¾Ë¾Æ³»´Â
o (ÀÌÀü¿¡ ±â·ÏµÇ¾îÀÖÁö ¾Ê´ø) Åõ¸íÇÑ ÇÁ·Ï½ÃÀÇ È¯»óÀ» Á¾½Ä½ÃÅ°´Â bind-
to-foreign-address ÇØÅ·Àº ´õÀÌ»ó Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.
4.1. ³ª´Â ´ÜÁö ¸¶½ºÄõ·¹À̵ù Çϱ⸸ ¿øÇÑ´Ù... µµ¿ÍÁÒ..
ÀÌ°ÍÀº ´ëºÎºÐÀÇ »ç¶÷µéÀÌ ¿øÇÏ´Â °ÍÀÌÁÒ. ¿©·¯ºÐÀÌ ÀÚµ¿À¸·Î ÇÒ´çµÇ´Â IP
PPP dialupÀ» »ç¿ëÇÑ´Ù¸é(¾î¶²°ÍÀÎÁö ¸ð¸¥´Ù¸é, ¿©·¯ºÐÀÌ »ç¿ëÇÏ´Â °Ô
ÀÌ°Å´Ù.), ¿©·¯ºÐÀÇ ¸ðµç ³»ºÎ ³×Æ®¿öÅ©·ÎºÎÅÍ ¿À´Â ÆÐŶÀº PPP dialup
¹Ú½º·ÎºÎÅÍ ¿À´Â °ÍÀ¸·Î º¸¿©Áöµµ·Ï Ç϶ó°í ¿©·¯ºÐÀÇ ÄÄÇ»ÅÍ¿¡°Ô
À̾߱âÇϱ⸦ ¿øÇÒ °ÍÀÌ´Ù.
# ÇÒ´çµÇ´Â IP ÁÖ¼Ò¸¦ ¹ÞÀºÈÄ (POSTROUTING) NAT Å×ÀÌºí¿¡ (-t nat) ¹ÛÀ¸·Î ÇâÇÏ´Â
# ppp0 (-o ppp0) ÀÇ ¸ðµç ÆÐŶµéÀÌ ¸¶½ºÄõ·¹ÀÌµå µÇµµ·Ï Á¢¼ÓÇϵµ·Ï (-j
# MASQUERADE) »õ·Î¿î ±ÔÄ¢À» Ãß°¡Çϸé (-A) µÈ´Ù.
iptables -A POSTROUTING -t nat -o ppp0 -j MASQUERADE
# IP forwarding À» ÄÒ´Ù.
echo 1 > /proc/sys/net/ipv4/ip_forward
¿©±â¼ ¾î¶°ÇÑ ÆÐŶ ÇÊÅ͸µµµ ÇÏÁö¾ÊÀº°Í¿¡ ÁÖÀÇÇϼ¼¿ä. ÆÐŶ ÇÊÅ͸µÀ»
À§Çؼ´Â ÆÐŶ ÇÊÅ͸µ ÇÏ¿ìÅõ¸¦ º¸¼¼¿ä.
4.2. ipmasqadmÀº ¾î¶»ÇÏÁÒ ?
»ç¿ëÀÚ ÀÔÀå¿¡¼ ÀÌ°ÍÀÌ ÈξÀ ÀûÀýÇϹǷΠ³ª´Â ÀÌÀü°Í°úÀÇ È£È¯¼º¿¡ ´ëÇÏ¿©
¸¹ÀÌ °ÆÁ¤ÇÏÁö ¾Ê½À´Ï´Ù. Æ÷Æ® Æ÷¿öµùÇϱâÀ§Çؼ °£´ÜÈ÷ 'iptables -t
nat'¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù. ¿¹·Î ¸®´ª½º 2.2 ¿¡¼´Â ´ÙÀ½°ú °°ÀÌ ÇÏ¿´À»
°ÍÀÔ´Ï´Ù.
# ¸®´ª½º 2.2
# 1.2.3.4ÀÇ 8080Æ÷Æ®·Î °¡´Â TCP ÆÐŶÀ» 192.168.1.1ÀÇ 80 Æ÷Æ®·Î °¡µµ·Ï Æ÷¿öµù
ipmasqadm portfw -a -P tcp -L 1.2.3.4 8080 -R 192.168.1.1 80
ÀÌÁ¦´Â ´ÙÀ½°ú °°ÀÌ ÇÏ¿©¾ß ÇÕ´Ï´Ù.
# ¸®´ª½º 2.4
# ¶ó¿ìÆà Àü¿¡ ±ÔÄ¢À» Ãß°¡Çϵµ·Ï (-A PREROUTING) NAT Å×ÀÌºí¿¡°Ô (-t nat) À̾߱â
# Çϴµ¥ ´ë»ó ÆÐŶÀº TCP ÆÐŶÀ¸·Î (-p tcp) ¿ø·¡ ¸ñÀûÁÖ¼Ò´Â 1.2.3.4 ÀÌ°í (-d
# 1.2.3.4) 8080 Æ÷Æ®ÀÌ´ø°ÍÀ» (--dport 8080) »õ·Î¿î ¸ñÀû ÁÖ¼Ò¸¦ °®µµ·ÏÇÕ´Ï´Ù.
# (-j DNAT) ±× »õ·Î¿î ¸ñÀû ÁÖ¼Ò´Â 192.168.1.1 ÀÌ°í 80 Æ÷Æ®¸¦ ÀÌ¿ëÇÕ´Ï´Ù (--to
# 192.168.1.1:80)
iptables -A PREROUTING -t nat -p tcp -d 1.2.3.4 --dport 8080 \
-j DNAT --to 192.168.1.1:80
Áö¿ª Á¢¼Ó¿¡¼µµ À§ÀÇ ±ÔÄ¢ÀÌ Àû¿ëµÇµµ·Ï ÇÒ·Á¸é(Áï, NAT ¹Ú½º ÀÚ½ÅÀÌ
1.2.3.4ÀÇ 8080Æ÷Æ®·Î Á¢¼ÓÇÒ·ÁÇÒ¶§ 192.168.1.1ÀÇ 80Æ÷Æ®·Î ¿¬°áµÇµµ·Ï
ÇÒ·Á¸é), ¶È°°Àº ±ÔÄ¢À» Ãâ·Â üÀο¡µµ Ãß°¡½ÃÄÑÁÖ¸é µË´Ï´Ù.
# ¸®´ª½º 2.4
iptables -A OUTPUT -t nat -p tcp -d 1.2.3.4 --dport 8080 \
-j DNAT --to 192.168.1.1:80
5. NAT Á¶ÀýÇϱâ
¾î¶² Á¢¼ÓÀ» ¹Ù²Ü°ÍÀΰ¡ ±×¸®°í ¾î¶»°Ô ¹Ù²Ü°ÍÀΰ¡¸¦ Ä¿³Î¿¡°Ô ¾Ë·ÁÁÖ±â
À§ÇÏ¿© NAT ±ÔÄ¢µéÀ» ¸¸µé ÇÊ¿ä°¡ ÀÖÀ» °ÍÀÔ´Ï´Ù. ÀÌ·¸°Ô Çϱâ À§Çؼ,
¿ì¸®´Â ¾ÆÁÖ ´ÙÀç´Ù´ÉÇÑ iptables¸¦ »ç¿ëÇÕ´Ï´Ù. ÀÌ°ÍÀº '-t nat' À̶ó´Â
Ưº°ÇÑ ¿É¼ÇÀ» »ç¿ëÇÏ¿© NAT Å×À̺íÀ» º¯°æÇØ ÁÜÀ¸·Î °¡´ÉÇÕ´Ï´Ù.
NAT Å×ÀÌºí¿¡´Â ¼¼°³ÀÇ 'üÀÎ'À̶ó ºÒ¸®´Â ±ÔÄ¢µéÀÌ ÀÖ½À´Ï´Ù. °¢ ±ÔÄ¢Àº
ÀÏÄ¡ÇÏ´Â °ÍÀÌ ³ª¿Ã¶§±îÁö ¼ø¼´ë·Î ½ÃÇèµË´Ï´Ù. ¼¼°³ÀÇ Ã¼ÀÎÀº
PREROUTING( ¸ñÀûÁö NATÀÇ °Ü¿ì ÆÐŶÀÌ Ã³À½À¸·Î µé¾î¿Ã¶§), POSTROUTING (
½ÃÀÛÁ¡ NATÀÇ °æ¿ì ÆÐŶÀÌ ¶°³ª°¥¶§), ±×¸®°í Ãâ·Â ( Áö¿ª ³×Æ®¿öÅ©¿¡¼
»ý¼ºµÈ ¸ñÀûÁö NAT ÆÐŶ) ÀÔ´Ï´Ù.
¾Æ·¡ ±×¸²Àº ÀÌ·¯ÇÑ °ü°è¸¦ Àß ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.
_____ _____
/ \ / \
PREROUTING -->[Routing ]----------------->POSTROUTING----->
\D-NAT/ [Decision] \S-NAT/
| ^
| __|__
| / \
| | OUTPUT|
| \D-NAT/
| ^
| |
--------> Local Process ------
ÆÐŶÀÌ Áö³ª°¥¶§ À§ÀÇ °¢ ´Ü°è¿¡¼ ¾î¶°ÇÑ Á¢¼Ó°ú ¿¬°üµÇ¾î ÀÖ´ÂÁö¸¦
»ìÆ캾´Ï´Ù. »õ·Î¿î Á¢¼ÓÀ̶ó¸é ÀÌ°ÍÀÌ Àû¿ëµÇ´Â üÀÎÀÌ ¹«¾úÀÎÁö¸¦
¾Ë¾Æº¸°í ÀÌ°ÍÀ» ¾î¶»°Ô ÇÒ °ÍÀÎÁö¸¦ ¾Ë¾Æº¸±â À§ÇÏ¿© NAT Å×À̺íÀ»
»ìÆ캾´Ï´Ù. NAT Å×À̺íÀÇ ³»¿ëÀº ÀÌÈÄ ÀÌ Á¢¼ÓÀ¸·ÎºÎÅÍ ¿À´Â ¸ðµç ÆÐŶ¿¡
Àû¿ëµË´Ï´Ù.
5.1. iptables »ç¿ëÇÒ¶§ÀÇ ´Ü¼øÇÑ ¼±ÅÃ
iptables Àº ¾Æ·¡¿¡ ³ª¿µÈ ¸î°³ÀÇ ±âº» ¿É¼ÇÀÌ ÀÖ½À´Ï´Ù. ¸ðµç µÎÁÙÀÇ
¿É¼ÇÀº iptables°¡ ´Ù¸¥ °¡´ÉÇÑ ¿É¼Ç°ú ±¸ºÐÇÒ ¼ö ÀÖ´Ù¸é ÁÙ¿© ¾µ¼ö
ÀÖ½À´Ï´Ù.
°¡Àå Áß¿äÇÑ ¿É¼ÇÀº ¸ðµç NAT ÀÛµ¿¿¡ »ç¿ëµÇ´Â NAT Å×À̺íÀ» ÁöĪÇÏ´Â '-t
nat' ¿É¼ÇÀÔ´Ï´Ù. µÎ¹ø°·Î Áß¿äÇÑ ¿É¼ÇÀº »õ·Î¿î ±ÔÄ¢À» ±× üÀÎÀÇ ³¡¿¡
Ãß°¡ÇÏ´Â '-A' ¿É¼ÇÀÔ´Ï´Ù.(¿¹. '-A POSTROUTING'). '-I'¿É¼ÇÀº üÀÎÀÇ
óÀ½¿¡ Ãß°¡ÇÕ´Ï´Ù (¿¹.
NAT¸¦ ÀÌ¿ëÇÒ ÆÐŶÀÇ ½ÃÀÛÁ¡À̳ª ('-s', '--source') ¸ñÀûÁö ('-d',
ÁÖ¼Ò(¿¹. 192.168.1.1)³ª À̸§ (¿¹. www.kernelnotes.org)À̳ª ³×Æ®¿öÅ©
ÁÖ¼Ò (¿¹. 192.168.1.0/24 ¶Ç´Â 192.168..0/255.255.255.0) °¡
µû¶ó¿É´Ï´Ù.
ÀÏÄ¡ÇÏ´Â ÀÎÅÍÆäÀ̼¸¦ ÁöÁ¤ÇÒ ¼öµµ Àִµ¥ µé¾î¿À´Â °Í('-i', ±×·¯³ª ¾î¶²
üÀο¡ ÀÌ ±ÔÄ¢À» Àû¿ëÇÒ °ÍÀÎÁö¸¦ °áÁ¤ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù. PREROUTING ¿¡´Â
µé¾î¿À´Â ÀÎÅÍÆäÀ̼¸¸ ¼±ÅÃÇÒ ¼ö ÀÖ°í POSTROUTING (±×¸®°í Ãâ·Â) ¿¡´Â
³ª°¡´Â ÀÎÅÍÆäÀ̼¸¸ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀ» À߸ø ¼±ÅÃÇϸé
iptables´Â ¿¡·¯¸¦ ³¾ °ÍÀÔ´Ï´Ù.
5.2. ¾î¶°ÇÑ ÆÐŶÀ» Á¶ÀÛÇÒ °ÍÀÎÁö, ¼¶¼¼ÇÑ ¼±ÅÃ
À§¿¡¼ ½ÃÀÛÁ¡°ú ¸ñÀûÁöÀÇ ÁÖ¼Ò¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù°í À̾߱â Çß½À´Ï´Ù.
½ÃÀÛÁ¡ ÁÖ¼ÒÀÇ ¿É¼ÇÀ» »ç¿ëÇß´Ù¸é ¸ðµç ½ÃÀÛÁ¡ ÁÖ¼Ò°¡ Á¶ÀÛ µÉ°ÍÀÌ°í
¸ñÀûÁö ÁÖ¼ÒÀÇ ¿É¼ÇÀ» »ç¿ëÇß´Ù¸é ¸ðµç ¸ñÀûÁö ÁÖ¼Ò°¡ Á¶ÀÛµÉ °ÍÀÔ´Ï´Ù.
TCP ³ª UDP ó·³ ÇÁ·ÎÅäÄÝÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù ('-p', '--protocol').
ÁöÁ¤ÇÑ ÇÁ·ÎÅäÄÝÀÇ ÆÐŶ¸¸ ±ÔÄ¢°ú ÀÏÄ¡ÇÏ´ÂÁö °Ë»çÇÒ °ÍÀÔ´Ï´Ù. ÀÌ·¸°Ô
ÇÏ´Â ÁÖ ÀÌÀ¯´Â tcp³ª udp¸¦ ÁöÁ¤Çϸé Ãß°¡ÀÇ ¿É¼ÇÀÌ °¡´ÉÇϱ⠶§¹®ÀÔ´Ï´Ù.
±× Ãß°¡ÀÇ ¿É¼ÇÀº
ÀÌ·¯ÇÑ ¿É¼ÇÀº ¾î¶² ½ÃÀÛÁ¡À̳ª ¸ñÀûÁö Æ÷Æ®ÀÇ °Í¸¸À» ÁöÁ¤ÇÒ ¼ö ÀÖ°Ô
ÇÕ´Ï´Ù. ÀÌ°ÍÀº À¥ ¿ä±¸µé(TCP 80 À̳ª 8080 Æ÷Æ®)¸¦ ´Ù¸¥°÷À¸·Î ¹æÇâÀ»
¹Ù²Ù°í ´Ù¸¥ÆÐŶÀº ±×³É µÎ·Á°í ÇÒ¶§ À¯¿ëÇÕ´Ï´Ù.
ÀÌ·¯ÇÑ ¿É¼ÇÀº '-p' ¿É¼ÇµÚ¿¡ µû¶ó¿Í¾ß ÇÕ´Ï´Ù. (ÀÌ°ÍÀº ±× ÇÁ·ÎÅäÄÝ¿¡
´ëÇÑ È®Àå ¶óÀ̺귯¸®¸¦ ·ÎµùÇÏ´Â ºÎÀÛ¿ëµµ ÀÖ½À´Ï´Ù.) /etc/services ¿¡¼
¾òÀ» ¼ö ÀÖ´Â À̸§À̳ª Æ÷Æ® ¹øÈ£¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
ÆÐŶÀ» ¼±ÅÃÇÏ´Â ¿©·¯ µî±ÞÀÇ ¹æ¹ýµéÀº °íÅ뽺·¯¿î ¼¼ºÎ»çÇ׵鿡 ´ëÇÑ
¼³¸íÀÌ ³ª¿ÍÀÖ´Â ¸Þ´º¾ó ÆäÀÌÁö¸¦ Âü°íÇϼ¼¿ä. (man iptables).
6. ÆÐŶÀ» ¾î¶»°Ô Á¶ÀÛÇÒÁö¸¦ ¾Ë·ÁÁÖ±â
ÀÌÁ¦ Á¶ÀÛÇÒ·Á´Â ÆÐŶÀ» ¾î¶»°Ô ¼±ÅÃÇÏ´ÂÁö¸¦ ¾Ë¾Æº¸¾Ò½À´Ï´Ù. ±ÔÄ¢À»
¿Ï¼ºÇÒ·Á¸é ÆÐŶÀ» ¾î¶»°Ô ÇÒ °ÍÀÎÁö¸¦ Ä¿³Î¿¡°Ô ¾Ë·ÁÁÖ¾î¾ß ÇÕ´Ï´Ù.
6.1. ½ÃÀÛÁ¡ NAT
½ÃÀÛÁ¡ NAT¸¦ »ç°í½Í´Ù¸é ; Á¢¼ÓÀÇ ½ÃÀÛÁ¡ ÁÖ¼Ò¸¦ ´Ù¸¥ °ÍÀ¸·Î ¹Ù²ß´Ï´Ù.
ÀÌ°ÍÀº POSTROUTING üÀο¡¼ ¹Ù±ùÀ¸·Î ³»º¸³» Áö±â ¹Ù·Î Á÷Àü¿¡ ÀÌ·ç¾î
Áý´Ï´Ù. ÀÌ°ÍÀº ¾ÆÁÖ Áß¿äÇÑ ¼¼ºÎ»çÇ×À¸·Î ÀÌ°ÍÀº ¸®´ª½º ¹Ú½º ÀÚü¿¡¼´Â
¹Ù²î±â ÀüÀÇ ÆÐŶÀ» ÀνÄÇÑ´Ù´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù. ÀÌ°ÍÀº ¶ÇÇÑ '-o'
(¹ÛÀ¸·Î ³ª°¡´Â ÀÎÅÍÆäÀ̼) ¿É¼ÇÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù.
½ÃÀÛÁ¡ NAT ´Â '-j SNAT'¸¦ »ç¿ëÇÔÀ¸·Î ÁöÁ¤µÇ°í '--to-source' ¿É¼ÇÀ¸·Î
IP ÁÖ¼Ò, IP ÁÖ¼ÒÀÇ ¹üÀ§, Æ÷Æ®, Æ÷Æ®ÀÇ ¹üÀ§ (UDP ¿Í TCP ÇÁ·ÎÅäÄÝ¿¡¼¸¸)
¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
## ½ÃÀÛÁ¡ ÁÖ¼Ò¸¦ 1.2.3.4·Î ¹Ù²Ù±â
# iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 1.2.3.4
## ½ÃÀÛÁ¡ ÁÖ¼Ò¸¦ 1.2.3.4 ³ª 1.2.3.5 ¶Ç´Â 1.2.3.6À¸·Î ¹Ù²Ù±â
# iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 1.2.3.4-1.2.3.6
## ½ÃÀÛÁ¡ ÁÖ¼Ò¸¦ 1.2.3.4 Æ÷Æ® 1-1023 À¸·Î ¹Ù²Ù±â
# iptables -t nat -A POSTROUTING -p tcp -o eth0 -j SNAT --to 1.2.3.4:1-1023
6.1.1. ¸¶½ºÄõ·¹À̵ù
½ÃÀÛÁ¡ NATÀÇ Æ¯º°ÇÑ °æ¿ì·Î ¸¶½ºÄõ·¹À̵ùÀ̶ó´Â°Ô ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº Ç¥ÁØ
ÀüÈÁ¢¼Óó·³ µ¿ÀûÀ¸·Î ÇÒ´çµÇ´Â IP Áַθ¦ »ç¿ëÇÒ¶§¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. (
Á¤ÀûÀÎ IP ÁÖ¼Ò¸¦ »ç¿ëÇÒ¶§¿¡´Â À§ÀÇ SNAT¸¦ »ç¿ëÇϼ¼¿ä.)
¸¶½ºÄõ·¹À̵ùÇÒ¶§ ½ÃÀÛÁ¡ ÁÖ¼Ò¸¦ Á¤È®È÷ Àû¾îÁÙ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ÀÌ°ÍÀº
¹ÛÀ¸·Î ³ª°¡´Â ÆÐŶÀÌ ÀÌ¿ëÇÏ´Â ÀÎÅÍÆäÀ̼¸¦ ÀÌ¿ëÇÒ °ÍÀÔ´Ï´Ù. ±×·¯³ª
´õ¿í Áß¿äÇÑ °ÍÀº, ±× ¿¬°áÀÌ ²÷¾îÁö¸é ±× Á¢¼ÓÀº ÀÒ¾î¹ö¸®°Ô µË´Ï´Ù. Áï,
»õ·Î¿î IP ÁÖ¼Ò¸¦ ¹Þ°ÔµÇ¸é µå¹® µ¹¿¬ÇÑ ÀÌ»óÀÌ »ý±æ ¼ö ÀÖÀ½À»
ÀǹÌÇÕ´Ï´Ù.
## ppp0 ·Î ³ª°¡´Â ¸ðµç ÆÐŶÀ» ¸¶½ºÄõ·¡À̵å Çϱâ
# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
6.2. ¸ñÀûÁö NAT
ÀÌ°ÍÀº PREROUTING üÀο¡¼ ÆÐŶÀÌ µé¾î¿À±â ¹Ù·Î Á÷Àü¿¡ ÀÌ·ç¾î Áý´Ï´Ù.
ÀÌ°ÍÀº ¸®´ª½º ¹Ú½º ÀÚü¿¡¼´Â µé¾î¿À´Â ÆÐŶÀÇ '½ÇÁ¦' ¸ñÀûÁö¸¦ ¾Ë°Ô
µÈ´Ù´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù. ÀÌ°ÍÀº ¶ÇÇÑ '-I' (µé¾î¿À´Â ÀÎÅÍÆäÀ̼) ¿É¼ÇÀ»
»ç¿ëÇÒ ¼ö ÀÖÀ½À» ÀǹÌÇÕ´Ï´Ù.
Áö¿ª ³×Æ®¿öÅ©¿¡¼ »ý¼ºµÈ ÆÐŶÀÇ ¸ñÀûÁö¸¦ Á¶ÀÛÇÒ·Á¸é Ãâ·Â üÀÎÀ»
ÀÌ¿ëÇÏ¸é °¡´ÉÇѵ¥, ÀÌ°ÍÀº °ÅÀÇ »ç¿ëµÇÁö ¾Ê½À´Ï´Ù.
¸ñÀûÁö NAT ´Â '-j DNAT' ¸¦ »ç¿ëÇÔÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ°í '--to-
destination' ¿É¼ÇÀ¸·Î IP ÁÖ¼Ò, IP ÁÖ¼ÒÀÇ ¹üÀ§, Æ÷Æ®³ª Æ÷Æ®ÀÇ ¹üÀ§(UDP
¿Í TCP ÇÁ·ÎÅäÄÝ¿¡¼¸¸)¸¦ ÁöÁ¤ÇÒ¼ö ÀÖ½À´Ï´Ù.
## ¸ñÀûÁö ÁÖ¼Ò¸¦ 5.6.7.8·Î ¹Ù²Ù±â
# iptables -t nat -A PREROUTING -i eth1 -j DNAT --to 5.6.7.8
## ¸ñÀûÁö ÁÖ¼Ò¸¦ 5.6.7.8 À̳ª 5.6.7.9 ¶Ç´Â 5.6.7.10À¸·Î ¹Ù²Ù±â
# iptables -t nat -A PREROUTING -i eth1 -j DNAT --to 5.6.7.8-5.6.7.10
## À¥ Æ®·¡ÇÈÀÇ ¸ñÀûÁö ÁÖ¼Ò¸¦ 5.6.7.8ÀÇ 8080 Æ÷Æ®·Î ¹Ù²Ù±â
# iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth1 \
-j DNAT --to 5.6.7.8:8080
## 1.2.3.4·Î °¡´Â Áö¿ª ÆÐŶÀ» loopbackÀ¸·Î Àç¼³Á¤ Çϱâ
# iptables -t nat -A OUTPUT -d 1.2.3.4 -j DNAT --to 127.0.0.1
6.2.1. ¹æÇâ Àç¼³Á¤
¸ñÀûÁö NAT ÁßÀÇ Æ¯¼öÇÑ °æ¿ì·Î ¸¶½ºÄõ·¹À̵ùÀÌ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº µé¾î¿À´Â
ÀÎÅÍÆäÀ̽ºÀÇ ÁÖ¼Ò·Î DNAT¸¦ ÀÌ¿ëÇÏ´Â °Í°ú Á¤È®È÷ ÀÏÄ¡ÇÏ´Â °ÍÀ¸·Î ´Ü¼øÇÑ
ÆíÀǼºÀ» À§ÇÑ °ÍÀÔ´Ï´Ù.
## µé¾î¿À´Â 80 Æ÷Æ®ÀÇ À¥ Á¤º¸¸¦ squid (Åõ¸íÇÑ) ÇÁ·Ï½Ã·Î º¸³»±â
# iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 \
-j REDIRECT --to-port 3128
6.3. Mappings In Depth
´ëºÎºÐÀÇ »ç¶÷ÀÌ ´Ù·çÁö ¾ÊÀ» ³»¿ëÁÖ NAT¸¦ »ç¿ëÇϴµ¥ ¹Ì¹¦ÇÑ ³»¿ëÀÌ Á»
ÀÖ½À´Ï´Ù. ÀÌ»óÇÏ°Ô ¿©±â´Â »ç¶÷À» À§ÇÏ¿© ÀÌ°÷¿¡ ±×°Íµé¿¡ ´ëÇÑ ³»¿ëÀ»
¾¹´Ï´Ù.
6.3.1. ¹üÀ§·Î ´Ù¼öÀÇ ÁÖ¼Ò¸¦ ¼±ÅÃÇϱâ
IP ÁÖ¼ÒÀÇ ¹üÀ§°¡ ÁÖ¾îÁö¸é ÃÖ±Ù¿¡ °¡Àå »ç¿ëµÇÁö ¾Ê¾Ò´ø IP ·Î Á¢¼ÓÀ»
Çϵµ·Ï ÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÔÀ¸·Î ±âº»ÀûÀÎ ºÎÇϱÕÇüÀ» ÀÌ·ì´Ï´Ù.
6.3.2. Creating Null NAT Mappings
ÇÒ ¼ö ÀÖ½À´Ï´Ù.
6.3.3. ±âº»ÀûÀÎ NAT Çൿ¾ç½Ä
±âº»ÀûÀÎ Çൿ¾ç½ÄÀº »ç¿ëÀÚ°¡ ¼³Á¤ÇÑ ±ÔÄ¢ÀÇ Çѵµ³»¿¡¼ °¡´ÉÇÑ ÃÖ¼ÒÇÑÀÇ
Á¢¼Ó¸¸ Çϵµ·Ï ÇÕ´Ï´Ù. ÀÌ°ÍÀº ²À ÇÊ¿äÇÏÁö ¾Ê´Â °æ¿ì¿¡ Æ÷Æ®µéÀ» Àç
¼³Á¤ÇÒ ÇÊ¿ä°¡ ¾ø´Ù´Â °ÍÀ» ÀǹÌÇÕ´Ï´Ù.
6.3.4. Implicit Source Port Mapping
Á¢¼ÓÀ» Çϴµ¥ NAT ¸¦ ¿ä±¸ÇÏÁö ¾Ê´õ¶óµµ ÀÌÀüÀÇ Á¢¼Ó¿¡ °ãÃļ Á¢¼ÓÀ»
½ÃµµÇÏ·ÁÇÏ¸é ½ÃÀÛÁ¡ Æ÷Æ®´Â °Á¦·Î º¯°æµÇµµ·Ï ÇÕ´Ï´Ù. Á» ÀÚÁÖ »ç¿ëµÇ´Â
°æ¿ì·Î ¸¶½ºÄõ·¹À̵ùÀÇ °æ¿ì¸¦ º¾½Ã´Ù.
1. 192.1.1.1ÀÇ 1024 Æ÷Æ®·ÎºÎÅÍ www.netscape.comÀÇ Æ÷Æ® 80À¸·Î À¥
Á¢¼ÓÀ» ÇÏ´Â °æ¿ì¸¦ °¡Á¤ÇØ º¾´Ï´Ù.
2. ±×¸®°í ÀÌ°ÍÀº ½ÃÀÛÁ¡ IP ÁÖ¼Ò(1.2.3.4)¸¦ °¡Áø °ÍÀ¸·Î ¸¶½ºÄù·¹ÀÌ´õ
µÈ´Ù°í °¡Á¤ÇÕ´Ï´Ù.
3. ¸¶½ºÄõ·¹À̵ù ¹Ú½º´Â 1.2.3.4(ÀÌ°ÍÀÇ ¿ÜºÎ ÀÎÅÍÆäÀ̼ ÁÖ¼Ò)ÀÇ 1024
Æ÷Æ®·ÎºÎÅÍ www.netscape.comÀÇ 80 Æ÷Æ®·Î À¥ Á¢¼ÓÀ» ÀÌ·èÇÕ´Ï´Ù.
4. NAT ÄÚµå´Â ±× ´ÙÀ½ÀÇ Á¢¼ÓÀº 1025Æ÷Æ®·Î ½ÃÀÛÁ¡ ÁÖ¼Ò¸¦ ¹Ù²Ù¾î ÀÌ µÑÀÌ
¼·Î Ãæµ¹ÇÏÁö ¾Êµµ·Ï ÇÕ´Ï´Ù.
ÀÌ·¯ÇÑ °Á¦ÀûÀÎ ½ÃÀÛÁ¡ ¼³Á¤ÀÌ ÀÌ·ç¾îÁú¶§ Æ÷µå´Â ´ÙÀ½ÀÇ ¼¼°¡Áö Ŭ·¡¼·Î
³ª´©¾î Áý´Ï´Ù.
o 512 ÀÌÇÏÀÇ Æ÷Æ®
o 512 ¿Í 1023 »çÀÌÀÇ Æ÷Æ®
o 1024 º¸´Ù Å« Æ÷Æ®
¼·Î ´Ù¸¥ Ŭ·¡½º·Î Æ÷Æ®°¡ ¼³Á¤µÇ´Â ÀÏÀº ¾øÀ» °ÍÀÔ´Ï´Ù.
6.3.5. NAT °¡ ½ÇÆÐÇßÀ» °æ¿ì ¾î¶²ÀÏÀÌ »ý±æ±î¿ä ?
»ç¿ëÀÚ°¡ ¿ä±¸Çѵ¥·Î Á¢¼ÓÀ» À¯ÀÏÇÏ°Ô ¼³Á¤ ÇÒ ¹æ¹ýÀÌ ¾ø´Â °æ¿ì ÀÌ°ÍÀº
DROP µË´Ï´Ù. ÀÌ°ÍÀº À߸øµÈ ÆÐŶÀÇ °æ¿ìó·³ ¾î¶°ÇÑ Á¢¼ÓÀÇ ÇüÅ·εµ
±¸ºÐµÇÁö ¾ÊÀ»¶§, ±×¸®°í ¸Þ¸ð¸® Á¦ÇÑÀ» ¹þ¾î³µÀ»¶§ µîÀÇ °æ¿ì¿¡µµ DROP
µË´Ï´Ù.
6.3.6. º¹¼öÀÇ ¼³Á¤, Áߺ¹, Ãæµ¹
NAT ±ÔÄ¢¿¡¼ ±× ´ë»ó ÆÐŶÀÌ °°Àº ¹üÀ§¸¦ °¡Áú ¼ö ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì
Ãæµ¹À» ÇÇÇÒ Á¤µµ·Î NAT ÄÚµå´Â ¶Ê¶ÊÇÕ´Ï´Ù. ±×·¯¹Ç·Î µÎ°³ÀÇ ±ÔÄ¢À»
1.2.3.4·ÎÀÇ Á¢¼Ó¿¡ Àû¿ëÇÏ¸é¼ ±× ½ÃÀÛÁ¡ ÁÖ¼Ò¸¦ °°ÀÌ 192.168.1.1°ú
192.168.1.2·Î Á¤ÇÏ´Â °Íµµ °¡´ÉÇÕ´Ï´Ù.
´õ±º´Ù³ª, ±× ÁÖ¼Ò°¡ ÁÖ¼Ò¼³Á¤À» ÇÏ°íÀÖ´Â ÄÄÇ»Å͸¦ Áö³´Ù¸é,
»ç¿ëÇÏ°íÀÖ´Â ½ÇÁ¦ IP ÁÖ¼Òµµ °ãÃÄ ¾µ¼ö°¡ ÀÖ½À´Ï´Ù. ±×·¡¼, ¿©·¯ºÐÀÌ
¼³Á¤µÈ ³×Æ®¿öÅ©(1.2.3.0/24)¸¦ °¡Áö°í ÀÖÁö¸¸ ÀÌ·¯ÇÑ ÁÖ¼ÒÁß Çϳª¸¦
³»ºÎÀÇ ³×Æ®¿öÅ©·Î »ç¿ëÇÏ°íÀÖ°í Çϳª´Â ±âÃÊÀûÀÎ ÀÎÅÍ³Ý ÁÖ¼ÒÀÎ
192.168.1.0/24¸¦ »ç¿ëÇÒ °æ¿ì ¿©·¯ºÐÀº ´Ü¼øÈ÷ 1.2.3.0 ³×Æ®¿ö±×·Î
192.168.1.0/24¸¦ ½ÃÀÛÁ¡ ÁÖ¼Ò·ÎÇÏ´Â NAT¸¦ ¾Æ¹«·± Ãæµ¹¿¡ ´ëÇÑ µÎ·Á¿ò
¾øÀÌ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
# iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 \
-j SNAT --to 1.2.3.0/24
°°Àº ³í¸®°¡ NAT ÄÄÇ»ÅÍ ÀÚ½ÅÀÌ »ç¿ëÇÏ´Â ÁÖ¼Ò¿¡µµ ÇØ´çµË´Ï´Ù. ÀÌ°ÍÀÌ
¸¶½ºÄõ·¹À̵ùÀÌ ÀÛµ¿ÇÏ´Â ¹æ½ÄÀÔ´Ï´Ù. (¸¶½ºÄõ·¡ÀÌ´õÇÏ´Â ÄÄÇ»ÅÍ
ÀÚ½ÅÀ¸·ÎºÎÅÍ ¿À´Â ½ÇÁ¦ÀÇ ÆÐŶ°ú ¸¶½ºÄõ·¹ÀÌ´õ µÇ´Â ÆÐŶÀÌ ÀÎÅÍÆäÀ̼ÀÇ
ÁÖ¼Ò¸¦ °øÀ¯ÇÔÀ¸·Î ÀÛµ¿ÇÏÁÒ.)
´õ´õ¿í, ¸¹Àº ´Ù¸¥ Ÿ°ÙÀ» °°Àº ÆÐŶ¿¡ ¼³Á¤ÇÒ ¼öµµ ÀÖ´Ù. ±×·¯¸é À̵éÀº
°øÀ¯µÉ °ÍÀÌ´Ù. ¿¹¸¦ µé¾î ¿©·¯ºÐÀÌ 1.2.3.5·Î´Â ¾Æ¹«°Íµµ ¼³Á¤µÇÁö ¾Ê±â¸¦
¹Ù¶õ´Ù¸é ±×·¸°Ô ÇÒ ¼ö ÀÖ´Ù.
# iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 \
-j SNAT --to 1.2.3.0-1.2.3.4 --to 1.2.3.6-1.2.3.254
6.3.7. Áö¿ªÀûÀ¸·Î »ý¼ºµÈ Á¢¼ÓÀÇ ¸ñÀûÁö¸¦ º¯°æÇϱâ
Áö¿ªÀûÀ¸·Î »ý¼ºµÈ ÆÐŶÀÇ ¸ñÀûÁö°¡ º¯°æµÈ´Ù¸é (Ãâ·Â üÀÎÀ» ÅëÇؼ)
±×·¡¼ ±× ÆÐŶÀÌ ´Ù¸¥ ÀÎÅÍÆäÀ̼¸¦ ÅëÇؼ ³ª°¡µµ·Ï ÇÑ´Ù¸é, ½ÃÀÛÁ¡
ÁÖ¼Òµµ ±× ÀÎÅÍÆäÀ̼ÀÇ ÁÖ¼Ò·Î ¹Ù²Ü ¼ö°¡ ÀÖ´Ù. ¿¹¸¦ µé¾î, ·çÇÁ¹é ÆÐŶÀÇ
¸ñÀûÁö¸¦ eth0·Î ÇâÇϵµ·Ï º¯°æÇÑ´Ù¸é ±× ½ÃÀÛÁ¡µµ 127.0.0.1 ¿¡¼ eth0ÀÇ
ÁÖ¼Ò·Î ¹Ù²î°Ô µÈ´Ù. ´Ù¸¥ ½ÃÀÛÁ¡ ¼³Á¤°ú´Â ´Þ¸® ÀÌ°ÍÀº Áï°¢ ½ÃÇàµÈ´Ù.
ÀÚ¿¬ÀûÀ¸·Î ÀÌ ¼³Á¤Àº ÀÀ´äÆÐŶÀÌ ¿ÔÀ»¶§ ¿ªÀüµÈ´Ù.
7. Ư¼öÇÑ ÇÁ·ÎÅäÄÝ
¾î¶² ÇÁ·ÎÅäÄÝÀ» NAT¿¡ ÀÇÇØ »ç¿ëµÇ¾î Áö´Â °ÍÀ» ½È¾îÇÑ´Ù. ÀÌ·¯ÇÑ
ÇÁ·ÎÅäÄݵéÀ» À§ÇÏ¿© µÎ°³ÀÇ È®ÀåÀÌ ±â·ÏµÇ¾î¾ß ÇÑ´Ù. Çϳª´Â ±×
ÇÁ·ÎÅäÄÝÀÇ Á¢¼ÓÃßÀûÀ» À§ÇÑ °ÍÀÌ°í ´Ù¸¥ Çϳª´Â ½ÇÁ¦ NAT¸¦ À§ÇÑ °ÍÀÌ´Ù.
³ÝÇÊÅÍ ¹èÆ÷ÆÇ¿¡´Â ÇöÁ¦ ftp¸¦ À§ÇÑ ¸ðµâ·Î ip_conntrack_ftp.o¿Í
ip_nat_ftp.o ÀÌ´Ù. ÀÌ µÑÀ» ¿©·¯ºÐÀÇ Ä¿³Î¿¡ ¸ðµâ·Î Ãß°¡ÇÑ´Ù¸é (¶Ç´Â
À̵éÀ» Ä¿³Î¿¡ ¿µ±¸È÷ Ãß°¡µÇµµ·Ï ÄÄÆÄÀÏ ÇÏ¿´´Ù¸é) ftp Á¢¼Ó¿¡ ´ëÇÑ
¾î¶°ÇÑ NATµµ ÀÛµ¿ÇÒ °ÍÀÌ´Ù. ±×·¯Áö ¾ÊÀ¸¸é ¼öµ¿ÀûÀÎ ftp¸¸À» »ç¿ëÇÒ ¼ö
ÀÖ°í ÀÌ·¸°Ô µÇ¸é ´Ü¼øÇÑ ½ÃÀÛÁ¡ NAT ÀÌ»óÀÇ °ÍÀ» ½Å·Ú¼ºÀÖ°Ô ½ÇÇàÇÒ ¼ö
¾ø´Ù.
8. NAT ¿¡ ´ëÇÑ °æ°í
Á¢¼Ó¿¡¼ NAT ¸¦ »ç¿ëÇÑ´Ù¸é ¸ðµç ÆÐŶÀº ²À NAT ¸¦ »ç¿ëÇÏ´Â ÄÄÀ»
ÀÌ¿ëÇØ¾ß ÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ÀÌ°ÍÀº Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù.
ƯÈ÷, Á¢¼Ó ÃßÀû Äڵ尡 ºÐÀýÀ» Àç°áÇÕÇÒ¶§´Â, Áï Á¢¼Ó ÃßÀûÀÌ ¹ÏÀ» ¼ö
¾ø°Ô µÉ»Ó ¾Æ´Ï¶ó ¿©·¯ºÐÀÇ ÆÐŶµéÀº Á¦´ë·Î Àü´ÞµÇÁö ¾Ê°í ºÐÀýÀº
º¸·ùµÇ°Ô µÉ °ÍÀÔ´Ï´Ù.
9. °¨»çÀÇ ¸»¾¸
¸ÕÀú WatchGuard¿¡ °¨»çÇÏ°í ³»°¡ ÀÛ¾÷ÇÒ¶§¿¡ ÃæºÐÈ÷ µµ¿òÀÌ µÉ Á¤µµ·Î
³ÝÇÊÅÍ¿¡ ´ëÇÑ ¸¹Àº »ý°¢À» ¹Ð¾îÁØ David Bonn¿¡°Ô °¨»çÇÕ´Ï´Ù.
±×¸®°í NATÀÇ ¾û¼ºÇÔÀ» ¹è¿ö°¡´À¶ó ¾ß´Ü ¹ý¼®À» ¶³¶§ µµ¿Í¼ö½Å ¸ðµçºÐµé,
ƯÈ÷ ³ªÀÇ ±â·ÏÀ» Àоî Áֽźе鲲 °¨»çÇÕ´Ï´Ù.
Rusty.
ÀÌ»ó ¼öºó¾ÆºüÀÇ ¾ûÅ͸® ¹ø¿ªÀ̾ú½À´Ï´Ù. ^^;