FreeBSD¿¡¼­ Çѱ¹Åë½Å ADSL »ç¿ëÇϱâ

È«¼ø¸í <sonnet@teatime.org> Àú.
2000³â 2¿ù 24ÀÏ, Revision 1.0


ÀÌ ±ÛÀº FreeBSD¿¡¼­ Çѱ¹Åë½Å ÄÚ³Ý ADSLÀ» »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÕ´Ï´Ù. Ãß°¡µÇ¾î¾ß Çϰųª °³¼±ÀÌ ÇÊ¿äÇÑ Á¡ÀÌ ÀÖÀ¸¸é ¾ðÁ¦µçÁö ÀúÀÚ¿¡°Ô ¿¬¶ô Áֽʽÿä.

1. °³¿ä

Çѱ¹Åë½Å ADSL ¼­ºñ½º´Â PPPoE(PPP over Ethernet)À̶õ ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÕ ´Ï´Ù. FreeBSD´Â 3.4R ¹öÀüºÎÅÍ ÀÌ ÇÁ·ÎÅäÄÝÀ» Áö¿øÇÏ°í Àֱ⠶§¹®¿¡ ¼Õ½±°Ô Çѱ¹Åë½Å ADSLÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

1.1. ³×Æ®¿÷ ±¸¼º

[ÀüÈ­±¹]               [          ¼ö¿ë°¡            ]
PPPoE ---------------- ADSL ¸ðµ© ----------- PC/PPPoE
¼­¹ö       ÀüÈ­¼±      (bridge)    ÀÌ´õ³Ý   Ŭ¶óÀ̾ðÆ®

¿©±â¼­ ƯÀÌÇÑ Á¡Àº ADSL ¸ðµ©ÀÌ PPPoE Ŭ¶óÀ̾ðÆ®°¡ º¸³»´Â Á¢¼Ó¿ä±¸¸¦ ¹Þ¾Æ¼­ Àü´Þ(routing)ÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó´Â Á¡ÀÔ´Ï´Ù. ADSL¸ðµ©Àº À§ ±×¸²ÀÇ ¿ÞÂÊ°ú ¿À¸¥ÂÊÀ» ¿¬°áÇÏ¿©, ¸¶Ä¡ 'ADSL ¸ðµ©ÀÌ Á¸ÀçÇÏÁö ¾Ê´Â °Íó·³' Çϳª·Î À̾îÁÖ°Ô(bridging) µË´Ï´Ù. Áï À§ÀÇ ±×¸² Àüü´Â ÇϳªÀÇ subnetworkÀ» Çü¼ºÇÏ°Ô µË´Ï´Ù.

À§ À̾߱Ⱑ ÀÌÇØ°¡ ¾È µÇ½Ã´Â ºÐÀº ADSL¸ðµ©ÀÇ Line Sync ·¥ÇÁ°¡ Á¤»óÀûÀ̶ó¸é(°è¼Ó ÄÑÁ® ÀÖ´Ù¸é). ADSL¸ðµ©Àº ÀüÇô °Çµå¸± ÇÊ¿ä°¡ ¾ø´Ù´Â °Í¸¸ ±â¾ïÇØ Áֽñ⠹ٶø´Ï´Ù.

2. ¼³Á¤

2.0. Áغñ¹°

2.1 ±âº»¼³Á¤

/etc/rc.conf ¿¡ ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÕ´Ï´Ù. (de0 ´ë½Å ÀÚ½ÅÀÌ »ç¿ëÇÏ´Â ³×Æ®¿öÅ© Ä«µå À̸§À¸·Î ¹Ù²Ü °Í)

network_interfaces="de0 lo0"
ifconfig_de0="inet 10.0.0.2  netmask 255.255.255.0"
defaultrouter="NO"

ÀÌ°ÍÀÌ ³¡³ª¸é ½ÃÇè»ï¾Æ ADSL ¸ðµ©¿¡ Á¢¼ÓÇØ º¸µµ·Ï ÇÕ´Ï´Ù.

ping 10.0.0.138

Âü°í: telnet 10.0.0.138 ȤÀº À¥ºê¶ó¿ìÀú¿¡¼­ http://10.0.0.138À» ÀÔ·ÂÇϸé ADS L ¸ðµ©¿¡ Á¢¼ÓÇØ ¼³Á¤À» º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ ¾Õ¼­µµ À̾߱âÇßµíÀÌ Çѱ¹Åë½Å ADSL »ç¿ëÀÚ´Â ¿©±â¼­ ¹Ù²Ü °ÍÀÌ °ÅÀÇ ¾øÀ¸¹Ç·Î, Á¢¼ÓÀÌ µÇ¸é ÀØ °í »ì¾Æµµ ÁÁ½À´Ï´Ù

2.2. Ä¿³Î ÄÄÆÄÀÏ

´ÙÀ½ ¼¼°¡Áö ¿É¼ÇÀ» ³Ö°í Ä¿³ÎÀ» »õ·Î ÄÄÆÄÀÏÇÕ´Ï´Ù.

NETGRAPH
NETGRAPH_SOCKET
NETGRAPH_PPPOE

2.3. ppp.conf ÆíÁýÇϱâ

±âº»ÀûÀÎ /etc/ppp/ppp.conf¼³Á¤Àº ´ÙÀ½°ú °°½À´Ï´Ù.

# Korea Telecomm ADSL(PPPoE)
KT:
set device PPPoE:de0:pppoe
set mru 1400
set mtu 1400
deny chap
accept pap
set speed sync
set cd 5
set authname ³»¾ÆÀ̵ð
set authkey ³»¾ÏÈ£
enable lqr
set redial 0 0
set dial
set ifaddr 192.168.1.1/0 192.168.1.2/0 255.255.255.0 0.0.0.0
add default HISADDR
enable dns

set device PPPoE:de0:pppoe

Á¦ÀÏ Áß¿äÇÕ´Ï´Ù. de0 ·£Ä«µå(NIC)¸¦ ÅëÇØ PPPoE ÇÁ·ÎÅäÄÝ·Î Á¢¼ÓÇÑ´Ù´Â ¶æÀÔ´Ï´Ù. ¸Ç ³¡ÀÇ pppoe´Â ÇÁ·Î¹ÙÀÌ´õ À̸§ÀÔ´Ï´Ù. ´Ù¸¥ ·£Ä«µå¸¦ »ç¿ëÇÒ °æ¿ì, de0 ´ë½Å ±× À̸§(xl0, rl1 µî)À» ÀûÀ¸¸é µË´Ï´Ù.

set mru 1400
set mtu 1400

ÀúÀÇ °æ¿ì ÀÌ °ªÀÌ 1472º¸´Ù Å©¸é ³×Æ®¿öÅ©°¡ Á¤»óÀûÀ¸·Î µ¿ÀÛÇÏÁö ¾Ê¾Ò½À´Ï´Ù. ¿©·¯°¡Áö °ªÀ» ½ÃÇèÇØ º¸°í °¡Àå ºü¸£´Ù ½ÍÀº °ÍÀ» ¾²¸é µË´Ï´Ù.

set authname ³»¾ÆÀ̵ð
set authkey ³»¾ÏÈ£
ÀÚ½ÅÀÇ kornet ID¿Í password¸¦ ÀûÀ¸¸é µË´Ï´Ù. linux »ç¿ëÀÚµéÀÇ º¸°í¿¡ µû¸£¸é Çѱ¹Åë½Å¿¡¼­ Áö±ÞÇÏ´Â PPPoE Ŭ¶óÀ̾ðÆ®(WinPoET)ÀÇ ·Î±×ÀΠâ¿¡ ±×³É ID°¡ ¾Æ´Ï¶ó ID@local°ú °°Àº ½ÄÀ¸·Î ÀÔ·ÂÇÏ´Â Áö¿ªÀÌ ÀÖ´Ù°í ÇÕ´Ï´Ù. ±×·² °æ¿ì¿¡´Â ±× À̸§À» ´Ù Àû¾îÁֱ⠹ٶø´Ï´Ù.

3. Á¢¼Ó

ppp -ddial KT 

Á¤»óÀûÀ̶ó¸é 2-3ÃÊ ¾È¿¡ ¼­¹ö¿¡¼­ »õ IP¸¦ ¹Þ¾Æ¿ÔÀ» °ÍÀÔ´Ï´Ù.

ifconfig tun0 ·Î È®ÀÎÇÕ´Ï´Ù.

´ÙÀ½°ú °°ÀÌ ³ª¿À¸é µË´Ï´Ù.

tun0: flags=8051 mtu 1400
      inet 211.38.160.32 --> 211.38.32.3 netmask 0xffffff00

netstat -rn Çؼ­ ¶ó¿ìÆà Å×À̺íÀ» »ìÆ캸¸é tun0°¡ default·Î ÀâÇôÀÖÀ½À» ¾Ë ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.

4. ÀÚµ¿ ½ÇÇà

½Ã½ºÅÛ ºÎÆýÿ¡ ADSLÁ¢¼ÓÀ» ÇÏ°í ½Í´Ù¸é /etc/rc.conf¿¡ ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÏ¸é µË´Ï´Ù.

ppp_enable="YES"
ppp_mode="ddial"
ppp_profile="KT"

5. Á¢¼Ó °øÀ¯

windows »ç¿ëÀÚ Áß¿¡´Â wingate³ª sygate°°Àº »ó¿ë ÇÁ·Î±×·¥À» »ç¿ëÇؼ­ º¹¼öÀÇ PC°¡ ÇϳªÀÇ ADSLÁ¢¼ÓÀ» °øÀ¯ÇÏ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. FreeBSD¿¡¼­ ÀÌ·¯ÇÑ ±â´ÉÀº º¸Åë NAT(Network Address Translation)¶ó´Â À̸§À¸·Î ºÒ¸³´Ï´Ù. NAT¸¦ Áö¿øÇÏ´Â ÇÁ·Î±×·¥À¸·Î´Â natd¶ó´Â °ÍÀÌ ÀÖÁö¸¸ ¿©±â¼­ »ç¿ëÇÑ user PPP¿¡´Â ±× ±â´ÉÀÌ Æ÷ÇԵǾî ÀÖÀ¸¹Ç·Î, ±×°ÍÀ» »ç¿ëÇϸé ÃæºÐÇÒ °ÍÀÔ´Ï´Ù.

ÀÌ¿¡ ´ëÇÑ ³»¿ëÀº PPP - Pedantic PPP Primer¿¡ Àß ³ª¿Í ÀÖÀ¸¹Ç·Î ÀÌ°ÍÀ» Âü°íÇϽñ⠹ٶø´Ï´Ù. ±âº»ÀûÀ¸·Î´Â /etc/rc.conf¿¡ ´ÙÀ½°ú °°ÀÌ ÀûÇôÀÖÀ¸¸é µË´Ï´Ù.

gateway_enable="YES"
ppp_nat="YES"

5.1 MTU ¼öÁ¤

À§ÀÇ ¹æ¹ýÀ¸·Î °øÀ¯ÇÏ¿´À» ¶§, Private IP¸¦ °®´Â Client¿ÍÀÇ Åë½ÅÀÌ Àß ¾ÈµÇ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ìÀÇ Áõ»óÀº telnetµîÀº Àß µÇ³ª ftpµîÀ¸·Î Å« ÆÄÀÏÀ» Àü¼ÛÇÏ¸é ¸Ü¾î¹ö¸®´Â °ÍÀÔ´Ï´Ù. ±×·² °æ¿ì GatewayÀÇ Client·Î ¿¬°áµÇ´Â Ãø NICÀÇ mtu¿Í ClientµéÀÇ mtu¸¦ ¸ðµÎ ppp.conf¿¡¼­ »ç¿ëÇß´ø °Í°ú °°°Ô ¼³Á¤ÇØ º¸½Ê½Ã¿À,

Unix °è¿­: /etc/rc.local¿¡ ´ÙÀ½°ú °°ÀÌ Àû¾îÁÝ´Ï´Ù.

ifconfig rl0 mtu 1400 

(¿ª½Ã ´Ù¸¥ ·£Ä«µå¸¦ »ç¿ëÇÒ °æ¿ì, rl0 ´ë½Å ±× À̸§(xl0 µî)À» ÀûÀ¸¸é µË´Ï´Ù. ÆÐŶÀÌ Áö³ª°¡´Â ¸ðµç ÀÎÅÍÆäÀ̽º¿¡ Àû¿ëÇØ¾ß µÊ¿¡ À¯ÀÇÇϽʽÿÀ)

Windows 9x: regedit¸¦ ½ÇÇà½ÃÄѼ­ HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\ ¹ØÀÇ 001, 002 ÇÏ´Â Ç׸ñÀ» ãÀº ÈÄ ÀÚ½ÅÀÌ ¿øÇÏ´Â ÀÎÅÍÆäÀ̽º¸¦ ã½À´Ï´Ù. ãÀ¸¸é ±× ¹ØÀÇ Ç׸ñ¿¡ MaxMTU¶ó´Â °ªÀÌ Àִ°¡ º¾´Ï´Ù. ÀÖÀ¸¸é ±× Ç׸ñÀ» ¿øÇÏ´Â °ªÀ¸·Î ¼öÁ¤ÇÏ°í ¾øÀ¸¸é »õ·Î ¸¸µé¾î ÁØ ÈÄ ¸®ºÎÆÃÇÏ¸é µË´Ï´Ù.

5.2 ´ÙÀ̾óÆеå

ÁÖÀÇ: ÀÌ ¹æ¹ýÀ¸·Î´Â Private IP¸¦ °®´Â ³»ºÎ ±â°èÁß ´Ü ÇÑ ´ë¿¡¼­¸¸ ´ÙÀ̾ó ÆÐµå ¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â Á¦¾àÀÌ ÀÖ½À´Ï´Ù.

/etc/ppp/ppp.conf¿¡ ´ÙÀ½À» Ãß°¡ÇÕ´Ï´Ù. (192.168.1.2´Â ´ÙÀ̾óÆеå ÅëÈ­¸¦ ¿øÇÏ´Â ±â°èÀÇ Private IP)

nat port udp 192.168.1.2:51200 51200
nat port udp 192.168.1.2:51201 51201
nat port tcp 192.168.1.2:7175 7175

5.3 Ư¼öÇÑ »óȲ¿¡¼­ ·£Ä«µå¸¦ ÇÑÀå Àý¾àÇÏ´Â Æí¹ý

ÀÌ¹Ì 10Mbps Shared(Dummy) Çãºêº¸´Ù ºü¸¥ Çãºê¸¦ °®°í ÀÖÀ» °æ¿ì, ´ÙÀ½°ú °°ÀÌ ¸ÁÀ» ±¸¼ºÇÏ¸é ·£Ä«µå¸¦ ÇÑÀå Àý¾àÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ¸Á ±¸¼ºÀ» ÃëÇÒ ¶§, ÀϹÝÀûÀÎ 10Mbps Shared(Dummy) Hub¸¦ »ç¿ëÇÏ°Ô µÇ¸é ADSLÀÇ ÃÖ°í¼ÓµµÀÎ 8Mbps¸¦ ´Ù ³¾ ¼ö ¾ø°Ô µÇ¹Ç·Î À¯ÀÇÇϽʽÿÀ.

±×¸²1. °øÀ¯¸¦ ÇÒ °æ¿ì, ÀϹÝÀûÀÎ ³×Æ®¿öÅ© ±¸¼º

[»ç¼³¸Á 1: ¿¹)10.0.0.1 ]     [ »ç¼³¸Á 2: ¿¹)192.168.1.1]
ADSL ¸ðµ© ------------ Gateway ------Hub-+---- Client A
                  NIC A    NIC B         +---- ...
                                         +---- Client n

±×¸² 2. ·£Ä«µå¸¦ ÇÑÀå Àý¾àÇÏ´Â ¸Á ±¸¼º

[»ç¼³¸Á 1: ¿¹)10.0.0.1 ]
ADSL ¸ðµ© -----Hub-+---- Gateway
                   +---- Client A
                   +---- ...
                   +---- Client n

6. ¾ÕÀ¸·Î °³¼±µÇ¾î¾ß ÇÒ Á¡

ÇöÀç´Â PPP¸¦ ÅëÇÑ ³×Æ®¿öÅ© ¼³Ä¡¿¡¼­ Çѱ¹Åë½Å ADSLÀ» »ç¿ëÇÒ ¹æ¹ýÀÌ ¾ø½À´Ï´Ù. Àú´Â ÀÌ °£´ÜÇÑ °ÍÀÌ Áö¿øµÇÁö ¾Ê´Â Å¿¿¡, À©µµ¿ìÁî ¸Ó½Å¿¡¼­ ISO À̹ÌÁö¸¦ ¹Þ¾Æ¼­ ±¸¿î ´ÙÀ½, ±× CD¸¦ °®°í ¼³Ä¡¸¦ ÇÏ°í ³ª¼­¾ß ADSLÀ» »ç¿ëÇÒ ¼ö ÀÖ¾ú½À´Ï´Ù. À̰͸¸ Áö¿øµÈ´Ù¸é, FreeBSD¿¡¼­ Çѱ¹Åë½Å ADSLÀÇ Áö¿øÀº ¿Ïº®ÇÏ´Ù°í ÇÒ ¼ö ÀÖÁö ¾ÊÀ»±î ÇÕ´Ï´Ù.

Âü°í ÀÚ·á

Ưº°ÇÑ °¨»ç