FreeBSD¿¡¼­ÀÇ IPv6 ¶ó¿ìÅÍ ±¸¼º ¹æ¹ý

±è»ó¹ü, Çѱ¹Åë½Å Åë½Å¸Á¿¬±¸¼Ò

 

1. ¸Ó¸®¸»

    ÀϹÝÀûÀ¸·Î ¶ó¿ìÅÍ´Â ÆÐŶ forwarding À§ÁÖÀÇ Àü¿ë ¶ó¿ìÅÍ(Dedicated Router)¿Í 2°³ ÀÌ»óÀÇ ÀÎÅÍÆäÀ̽º¸¦ Áö´Ñ ¹ü¿ë ÄÄÇ»Å͸¦ °³Á¶ÇÏ¿© ¸¸µç È£½ºÆ® ±â¹Ý ¶ó¿ìÅÍ(Host-based Router)·Î ºÐ·ùµÈ´Ù.  IPv6 ¶ó¿ìÅ͵µ cicso ¶ó¿ìÅÍ¿Í °°Àº Àü¿ë ¶ó¿ìÅÍ¿Í PC³ª ¿öÅ©½ºÅ×À̼ÇÀ» °³Á¶ÇÏ¿© ¸¸µç È£½ºÆ® ±â¹Ý ¶ó¿ìÅͰ¡ ÀÖ´Ù.

     IPv6 Àü¿ë ¶ó¿ìÅÍ´Â °¡°ÝÀÌ ¿ö³« ³ô±â ¶§¹®¿¡ ½ÇÇè¿ëÀ¸·Î »ç¿ëÇϱ⿡´Â ºÎ´ãÀÌ Å©´Ù.  ±×·¯³ª È£½ºÆ® ±â¹Ý ¶ó¿ìÅÍ´Â Àú·ÅÇÑ PC³ª ¾ÈÁ¤ÀûÀÎ ¿öÅ©½ºÅ×À̼ÇÀ» Çʿ信 µû¶ó °³Á¶ÇÏ¿© »ç¿ëÇϰí Çʿ伺ÀÌ ¾ø¾îÁö¸é ´Ù½Ã ¹ü¿ë ÄÄÇ»ÅͷΠȰ¿ëÇÒ ¼ö ÀÖ´Ù.

    È£½ºÆ® ±â¹Ý ¶ó¿ìÅ͸¦ Á¦ÀÛÇÏ·Á¸é 2°³ ÀÌ»óÀÇ ÀÎÅÍÆäÀ̽º Ä«µå¸¦ Áö´Ñ ÄÄÇ»ÅÍ Çϵå¿þ¾î, ¿î¿µÃ¼Á¦, IPv6 ½ºÅà ¼ÒÇÁÆ®¿þ¾î, ¶ó¿ìÆÃ ¼ÒÇÁÆ®¿þ¾î°¡ ÀÖ¾î¾ß ÇÑ´Ù.  PCÀÇ °æ¿ì 2ÀåÀÇ LAN Ä«µå, PC¿ë ¿î¿µÃ¼Á¦, KAME, INRIA µîÀÇ IPv6 ½ºÅà ¼ÒÇÁÆ®¿þ¾î, gated, bgpd, zebra, mrtd µîÀÇ ¶ó¿ìÆÃ ¼ÒÇÁÆ®¿þ¾î°¡ ÇÊ¿äÇÏ´Ù.  ¼±ÅÃÀº Á¦ÀÛÀÚÀÇ ÀÚÀ¯ÀÌÁö¸¸ º» TM¿¡¼­´Â ¾ÈÁ¤¼ºÀ» ¿ì¼±À¸·Î ÇÏ¿© ÆæÆ¼¾ö±Þ PC, 2ÀåÀÇ ethernet Ä«µå, FreeBSD 3.2 ¿î¿µÃ¼Á¦, FreeBSD 3.2 ¿ë KAME IPv6 ½ºÅÃ, bgpd ¶ó¿ìÆÃ µ¥¸ó ÇÁ·Î¼¼½º¸¦ »ç¿ëÇÑ ±âº»ÀûÀÎ PC IPv6 ¶ó¿ìÅÍÀÇ Á¦ÀÛÀ» ¼³¸íÇÑ´Ù.  ÀÌ ¶ó¿ìÅÍ´Â ¶ó¿ìÆÃ ±â´ÉÀ» ÁßÁö½Ã۸é IPv6 ´Ü¸»·Î »ç¿ëÀÌ °¡´ÉÇÏ´Ù.

    Ãʺ¸ÀÚ°¡ ¼Õ½±°Ô IPv6 ¶ó¿ìÅ͸¦ ±¸¼ºÇϰíÀÚ ÇÒ ¶§ ÇÊ¿äÇÑ ±¸¼º ¿ä¼Ò´Â ´ÙÀ½°ú °°´Ù.

 

2. FreeBSD 3.2 ¼³Ä¡

    ÆæÆ¼¾ö±Þ CPU¿¡ ÁÖ ¸Þ¸ð¸®°¡ 16MB ÀÌ»óÀ̰í ÇÏµå µð½ºÅ© ¿ë·®ÀÌ 4GB Á¤µµÀÎ PC¸¦ ÁغñÇÑ´Ù.  PC¸¦  ¶ó¿ìÅÍ·Î »ç¿ëÇÏ·Á¸é 2ÀåÀÇ LAN Ä«µå°¡ ¼³Ä¡µÇ¾î ³×Æ®¿öÅ©¿Í ¿¬°áµÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. ¸ÕÀú ¶ó¿ìÅÍÀÇ À̸§°ú µµ¸ÞÀÎ, IPv4 ÁÖ¼Ò, °ÔÀÌÆ®¿þÀÌ, ³×ÀÓ ¼­¹ö, ³×Æ®¿öÅ© ¸¶½ºÅ©¸¦ ¾Ë°í ÀÖ¾î¾ß ÇÑ´Ù.  ¶ÇÇÑ bgp4+ peeringÀ» À§ÇÑ AS ¹øÈ£, ¿¬°áµÉ »ó´ë Ãø AS ¹øÈ£, »ó´ëÃø ¶ó¿ìÅÍ IPv4 ÁÖ¼Ò, »ó´ëÃø ¶ó¿ìÅÍ IPv6 ÁÖ¼Ò¸¦ ¾Ë°í ÀÖ¾î¾ß ÇÑ´Ù.

    FreeBSB 3.2´Â 2ÀåÀÇ Ç÷ÎÇÇ µð½ºÅ©·Î ºÎÆÃ µð½ºÄÏÀ» ¸¸µé ¼ö ÀÖ´Ù. ´ÙÀ½ URL¿¡ µé¾î °¡¼­ ºÎÆÃ µð½ºÄÏÀ» ¸¸µç´Ù.

                             FreeBSD Çѱ¹ »çÀÌÆ®:  http://www.kr.freebsd.org/

    Ç÷ÎÇÇ µð½ºÅ©¸¦ ÁغñµÈ PC¿¡ ³Ö°í ºÎÆÃÀ» ½ÃŲ´Ù.  X developer °ü·Ã ºÎºÐÀ» ¼±ÅÃÇÏ¿© FreeBSD¸¦ ¼³Ä¡ÇÑ´Ù.  ¶ó¿ìÅÍÀÇ À̸§°ú IP ÁÖ¼Ò, °ÔÀÌÆ®¿þÀÌ, ³×ÀÓ ¼­¹ö, µµ¸ÞÀÎ À̸§µµ ³Ö¾î ÁØ´Ù.  ÇÏµå µð½ºÅ©°¡ ÇÑ °³ÀÏ °æ¿ì auto partitionÀ¸·Î ¼³Á¤ÇÏ¸é µÇ°í, µÎ °³ÀÏ °æ¿ì Çϳª´Â auto partitionÀ» ÇÏ°í ´Ù¸¥ Çϳª´Â ÀûÀýÈ÷ create ¸í·ÉÀ» ÅëÇØ partitionÀ» ÇÑ´Ù. FTP passive ¹æ½ÄÀ» ¼±ÅÃÇÏ¿© ³×Æ®¿öÅ©¸¦ ÅëÇØ ¿î¿µÃ¼Á¦°¡ ¼³Ä¡µÇ´Â µ¿¾È ±â´Ù¸°´Ù.

    FreeBSD 3.2°¡ ¼³Ä¡µÇ¸é ¸¶¿ì½º ŸÀÔ°ú Æ÷Æ®¸¦ ÁöÁ¤ÇÑ´Ù.  X server ¸Þ´º¿¡ ´ëÇØ ºñµð¿À Ä«µå Á¾·ù¿Í ¸ð´ÏÅÍ ÇØ»óµµ, mode selectionÀ» Á¤È®È÷ ÁöÁ¤ÇØ¾ß X À©µµ¿ì »ç¿ë¿¡ À־ ¹®Á¦°¡ ¾ø´Ù.   Add User¸¦ »ç¿ëÇØ¼­ Àӽà »ç¿ëÀÚ °èÁ¤À» ¸¸µç´Ù.  ÀÌÁ¦ Ç÷ÎÇÇ µð½ºÅ©¸¦ Á¦°ÅÇϰí ÀçºÎÆÃÀ» ½ÃŰ´Â °ÍÀ¸·Î FreeBSD 3.2¼³Ä¡°¡ ¿Ï·áµÈ´Ù.  

 

3.  IPv6 ½ºÅà ¼³Ä¡

    FreeBSD 3.2¿¡ ´ëÇØ /usr/local µð·ºÅ丮¿¡ ÀϺ» KAME IPv6 ¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡ÇÑ´Ù.  ÀÌ´Â ´ÙÀ½ »çÀÌÆ®¿¡¼­ ´Ù¿î·Îµå ¹ÞÀ» ¼ö ÀÖ´Ù.

                       ftp://ftp.kame.net/pub/kame/snap

¿©±â¼­ °¡Àå ÃÖ±ÙÀÇ FreeBSD 3.2¿ë KAME ¼ÒÇÁÆ®¿þ¾î¸¦ ´Ù¿î·Îµå ¹Þ´Â´Ù.  °³¹ß ÁøÇà ÁßÀÎ ¼ÒÇÁÆ®¿þ¾î¸¦ ´Ù¿î·Îµå ¹Þ´Â ¿ä·ÉÀº ¿ì¼± release ÆÇÀÌ Àִ°¡ º¸°í ¾øÀ¸¸é stable »óÅÂÀÇ ¼ÒÇÁÆ®¿þ¾î¸¦ ´Ù¿î·Îµå ¹Þ´Â´Ù.  Stable ÆÇµµ ¾øÀ¸¸é snap ¼ÒÇÁÆ®¿þ¾î Áß¿¡¼­ °¡Àå ÃÖ½ÅÀÇ °ÍÀ» ¹Þµµ·Ï ÇÑ´Ù.

    ¸ðµÎ ´Ù¿î·Îµå ¹Þ¾ÒÀ¸¸é ¼ÒÇÁÆ®¿þ¾î ÆÐŰÁö¸¦ Ç®¾î ³½´Ù. ÀÌ ¶§ ¸í·É¾î´Â ´ÙÀ½°ú °°´Ù.

                         gzip  -c  -d  kame-1999xxxx-fbsd32-xxxxxx.tgz  |  tar  -xvf  -

ÀÌ ¶§ kit ¶ó´Â µð·ºÅ丮°¡ »ý±â°í ±× ¾È¿¡ INSTALL ÆÄÀÏÀÌ ÀÖ´Ù.  ÀÌ INSTALL ÆÄÀÏÀ» ÁÖÀDZí°Ô º¸¸é¼­ KAME ¼ÒÇÁÆ®¿þ¾î ÆÐŰÁö¸¦ ¼³Ä¡ÇÑ´Ù.


4.  È¯°æ ¼³Á¤

    Ã³À½ IPv6 ¶ó¿ìÅ͸¦ Á¦ÀÛÇÏ´Â »ç¶÷ÀÌ ¾Ö¸¦ ¸Ô´Â ºÎºÐÀÌ ÀÌ È¯°æ ¼³Á¤ ºÎºÐÀÌ´Ù.  ±âº»ÀûÀÎ ³»¿ëÀ¸·Î Â÷±Ù Â÷±Ù ¼³¸íÇÏ¸é ´ÙÀ½°ú °°´Ù.

4.1  rc ÆÄÀÏ

/etc/rc ÆÄÀÏ ³¡ ºÎºÐ(exit 0 ¸í·É¾î ¾Õ¿¡)¿¡ ´ÙÀ½ ½ºÅ©¸³Æ®¸¦ Ãß°¡ÇÑ´Ù.

#-------------------v6 configuration---------------------#
[ -f /usr/local/v6/etc/rc.net6 ] && sh /usr/local/v6/etc/rc.net6

#----------------tunnelling information-----------------#
[ -f /etc/rc.ipv6 ] && sh /etc/rc.ipv6

#-----------------------v6 routing-------------------------#
/usr/local/v6/sbin/bgpd -c /usr/local/v6/etc/bgpd.conf

#----------------------route advertise--------------------#
/usr/local/v6/sbin/rtadvd <³»ºÎ ÀÎÅÍÆäÀ̽º À̸§>

 

4.2  rc.conf ÆÄÀÏ

/etc/defaults/rc.conf ÆÄÀÏ¿¡¼­ ´ÙÀ½ »çÇ×À» ¼öÁ¤ÇÑ´Ù.

hostname="<È£½ºÆ® Àüü À̸§>"  # Set this!

network_interfaces="ÀÎÅÍÆäÀ̽º1   ÀÎÅÍÆäÀ̽º2    lo0"
ifconfig_ÀÎÅÍÆäÀ̽º1="inet <IPv4 ÁÖ¼Ò>  netmask <IPv4 ¸¶½ºÅ©>"
ifconfig_ÀÎÅÍÆäÀ̽º2="inet <IPv4 ÁÖ¼Ò>  netmask  <IPv4 ¸¶½ºÅ©>"


defaultrouter="<IPv4 ÁÖ¼Ò>"          # Set to default gateway (or NO).

gateway_enable="YES"            # Set to YES if this host will be a gateway.
router_enable="NO"              # Set to YES to enable a routing daemon.

moused_enable="YES"     # Run the mouse daemon.

 

4.3  rc.net6

/usr/local/v6/etc/rc.net6 ÆÄÀÏÀº rc.net6.sample ÆÄÀÏÀ» º¹»çÇÑ ÈÄ ´ÙÀ½ ºÎºÐÀ» ¼öÁ¤ÇÑ´Ù.


ip6router=YES

iface="ÀÎÅÍÆäÀ̽º1   ÀÎÅÍÆäÀ̽º2"
prefix_ÀÎÅׯäÀ̽º1="IPv6 prefix"
prefix_ÀÎÅÍÆäÀ̽º2="IPv6 prefix"

#iface="ed0" #comment 󸮰¡ ÇÊ¿ä

# route6d
#       [ -x $route6d ] && $route6d $route6dflags    #comment 󸮰¡ ÇÊ¿ä

 

4.4  rc.ipv6 ÆÄÀÏ

    /etc/rc.ipv6 ÆÄÀÏÀº Åͳθµ Á¤º¸¸¦ ´ã°í ÀÖ´Ù.  ´ÙÀ½Àº ep0¿Í vx0 ÀÎÅÍÆäÀ̽º¸¦ Áö´Ñ ¶ó¿ìÅÍ¿¡ ´ëÇÑ ½ÇÁ¦ ¿¹¸¦ ³ªÅ¸³½´Ù.  ¸ÕÀú gifconfig¸¦ Á¤ÇØÁÖ°í ifconfig¸¦ Á¤ÇØÁÖ¾î¾ß ÇÑ´Ù.  ¸¶Áö¸·¿¡ default °æ·Î¸¦ Àâ¾ÆÁØ´Ù.


#----------------my system---------------#
/usr/local/v6/sbin/prefix ep0 3ffe:502:3:100:: prefixlen 64
/usr/local/v6/sbin/ifconfig ep0 inet6 3ffe:502:3:100::20:af38:e4ce prefixlen 64 alias

/usr/local/v6/sbin/prefix vx0 3ffe:502:3:101:: prefixlen 64
/usr/local/v6/sbin/ifconfig vx0 inet6 3ffe:502:3:101::a0:2496:1c67 prefixlen 64 alias

#-----------------to KAIST---------------#
/usr/local/v6/sbin/gifconfig gif0 203.255.255.84 192.249.24.26
/usr/local/v6/sbin/ifconfig gif0 inet6 3ffe:502:3:100::20:af38:e4ce 3ffe:502:3:2:290:27ff:
fe43:121f alias

#-----------------to ETRI----------------#
/usr/local/v6/sbin/gifconfig gif1 203.255.255.84 129.254.254.82
/usr/local/v6/sbin/ifconfig gif1 inet6 3ffe:502:3:100::20:af38:e4ce 3ffe:2e00::20:af86:f99
6 alias

#---------------default route------------#
/usr/local/v6/sbin/route add -inet6 default 3ffe:502:3:2:290:27ff:fe43:121f

 

4.5  bgpd.conf ÆÄÀÏ

    /usr/local/v6/etc/bgpd.conf ÆÄÀÏ¿¡´Â ripng¿Í bgpd4+ °ü·Ã Á¤º¸¸¦ ³Ö¾î ÁØ´Ù.  ´ÙÀ½ ¿ª½Ã ½ÇÁ¦ ¿¹¸¦ ³ªÅ¸³½´Ù.  

autonomoussystem 9270;
routerid 203.255.255.84;

# RIPng
rip yes {
        interface vx0 default originate;
        interface gif0 noripin noripout;
        interface gif1 noripin noripout;
};

# aggregation (RIPng)
aggregate 3ffe:502:3:100::/56 {
          proto direct interface gif0 {all;};
};

# BGP4+
bgp yes {
        # KAIST
        group type external peeras 7622 {
              peer 3ffe:502:3:2:290:27ff:fe43:121f;
        };
        # ETRI
        group type external peeras 3559 {
              peer 3ffe:2e00::20:af86:f996;
        };
};

# export list
export proto bgp as 7622 {
       proto direct interface ep0 {all;};
};
export proto bgp as 3559 {
       proto direct interface ep0 {all;};
};

 

5.  ¶ó¿ìÆÃ °³½Ã

ȯ°æ ¼³Á¤ÀÌ ¸ðµÎ ³¡³ª¸é  ´ÙÀ½ ¸í·ÉÀ¸·Î rebooting ½ÃŰ¸é ¶ó¿ìÅÍ·Î µ¿ÀÛÇÑ´Ù.

    sync;sync;sync;shutdown -r  now

À̶§ ¿¬°áÇÒ (bgp4+ peeringÀ» ½ÃµµÇÒ) »ó´ë Ãø¿¡°Ô ¿¬¶ôÀ» ÃëÇÏ¿© ¼­·Î AS ¹øÈ£, ¶ó¿ìÅÍÀÇ IPv4 ÁÖ¼Ò, IPv6 ÁÖ¼Ò¸¦ ±³È¯ÇÏ¿© ȯ°æ ¼³Á¤ ÆÄÀÏ¿¡ ÀÔ·ÂÇϵµ·Ï ÇÑ´Ù.

    Áö±Ý±îÁö´Â °¡Àå ±âº»ÀûÀÎ IPv6 ¶ó¿ìÅÍ Á¦ÀÛ ¹æ¹ýÀ» ¼³¸íÇÏ¿´°í À̿ܿ¡ QoS, bgp4+ ¶ó¿ìÆÃ, KAME ÄÚµå µî¿¡ ´ëÇØ Ãß°¡·Î ¾Ë·Á¸é ´ÙÀ½ URLÀ» Âü°íÇÏ¸é µÈ´Ù.  

   ÇÑÆí Çѱ¹Åë½Å Åë½Å¸Á¿¬±¸¼Ò ÀÎÅͳݱâ¼ú¿¬±¸½Ç¿¡ Àǹ®»çÇ׿¡ ´ëÇØ E-mailÀ» º¸³»´Â ¹æ¹ýµµ ÀÖ´Ù.