¡¡¡¡IPv6 (Ò²±»³Æ×÷ IPng ¡°ÏÂÒ»´ú IP¡±) ÊÇÖÚËùÖÜÖªµÄ IP ÐÒé (Ò²½Ð IPv4) µÄа汾¡£ ºÍÆäËûÏÖ´úµÄ *BSD ϵͳһÑù£¬ FreeBSD °üº¬ÁË KAME µÄ IPv6 ²Î¿¼ÊµÏÖ¡£ Òò´Ë£¬ ÄúµÄ FreeBSD ϵͳ°üº¬Á˳¢ÊÔ IPv6 ËùÐèÒªµÄËùÓй¤¾ß¡£ ÕâÒ»½ÚÖ÷Òª¼¯ÖÐÌÖÂÛÈçºÎÅäÖúÍʹÓà IPv6¡£
¡¡¡¡ÔÚ 1990 Äê´úÔçÆÚ£¬ ÈËÃÇ¿ªÊ¼µ£ÐÄ¿ÉÓÃµÄ IPv4 µØÖ·¿Õ¼äÔÚ²»¶ÏµØËõС¡£ Ëæ×Å Internet µÄ±¬Õ¨Ê½·¢Õ¹£¬ Ö÷ÒªµÄÁ½¸öµ£ÐÄÊÇ£º
Óþ¡ËùÓеĵØÖ·¡£ µ±È»ÏÖÔÚÕâ¸öÎÊÌâÒѾ²»ÔÙÄÇÑù¼âÈñ£¬ ÒòΪ RFC1918 ˽ÓеØÖ·¿Õ¼ä (10.0.0.0/8¡¢ 172.16.0.0/12£¬ ÒÔ¼° 192.168.0.0/16) ºÍÍøÂçµØÖ·×ª»» (NAT) ¼¼ÊõÒѾ±»¹ã·º²ÉÓá£
·ÓɱíÌõÄ¿±äµÃÌ«´ó¡£Õâµã½ñÌìÈÔÈ»Êǽ¹µã¡£
¡¡¡¡IPv6 ½â¾öÕâЩºÍÆäËüÐí¶àµÄÎÊÌ⣺
128 λµØÖ·¿Õ¼ä¡£»»¾ä»°£¬ÀíÂÛÉÏÓÐ 340,282,366,920,938,463,463,374,607,431,768,211,456 ¸öµØÖ·¿ÉÒÔʹÓá£ÕâÒâζ×ÅÔÚÎÒÃǵÄÐÇÇòÉÏÿƽ·½Ã×´óÔ¼ÓÐ 6.67 * 10^27 ¸ö IPv6 µØÖ·¡£
·ÓÉÆ÷½öÔÚËüÃǵÄ·ÓɱíÀï´æ·ÅÍøÂçµØÖ·¼¯£¬ Õâ¾Í¼õÉÙ·ÓɱíµÄƽ¾ù¿Õ¼äµ½ 8192 ¸öÌõÄ¿¡£
¡¡¡¡IPv6 »¹ÓÐÆäËüÐí¶àÓÐÓõŦÄÜ£¬È磺
µØÖ·×Ô¶¯ÅäÖà (RFC2462)
Anycast (ÈÎÒâ²¥) µØÖ·(¡°Ò»¶Ô¶à¡±)
Ç¿ÖÆµÄ¶à²¥µØÖ·
IPsec (IP °²È«)
¼òµ¥µÄÍ·½á¹¹
ÒÆ¶¯µÄ (Mobile) IP
IPv6 µ½ IPv4 µÄת»»»úÖÆ
¡¡¡¡Òª¸ü¶àÐÅÏ¢£¬Çë²é¿´£º
IPv6 ¸Å¹Û£¬ÔÚ playground.sun.com
¡¡¡¡Óм¸ÖÖ²»Í¬ÀàÐ굀 IPv6 µØÖ·£ºUnicast£¬Anycast ºÍ Multicast¡£
¡¡¡¡Unicast µØÖ·ÊÇΪÈËÃÇËùÊìÖªµÄµØÖ·¡£Ò»¸ö±»·¢Ë͵½ unicast µØÖ·µÄ°üʵ¼ÊÉϻᵽ´ïÊôÓÚÕâ¸öµØÖ·µÄ½Ó¿Ú¡£
¡¡¡¡Anycast µØÖ·ÓïÒåÉÏÓë unicast µØÖ·Ã»Óвî±ð£¬ Ö»ÊÇËüÃÇÇ¿µ÷Ò»×é½Ó¿Ú¡£Ö¸¶¨Îª anycast µØÖ·µÄ°ü»áµ½´ï×î½üµÄ (ÒÔ·ÓÉΪµ¥Î») ½Ó¿Ú¡£Anycast µØÖ·¿ÉÄÜÖ»±»Â·ÓÉÆ÷ʹÓá£
¡¡¡¡Multicast µØÖ·±êʶһ×é½Ó¿Ú¡£Ö¸¶¨Îª multicast µØÖ·µÄ°ü»áµ½´ïÊôÓÚ multicast ×éµÄËùÓеĽӿڡ£
×¢Òâ: IPv4 ¹ã²¥µØÖ· (ͨ³£Îª xxx.xxx.xxx.255) ÓÉ IPv6 µÄ multicast µØÖ·À´±íʾ¡£
±í 31-2. ±£ÁôµÄ IPv6 µØÖ·
IPv6 µØÖ· | Ô¤¶¨³¤¶È (bits) | ÃèÊö | ±¸×¢ |
---|---|---|---|
:: | 128 bits | δָ¶¨ | ÀàËÆ IPv4 ÖÐµÄ 0.0.0.0 |
::1 | 128 bits | »·»ØµØÖ· | ÀàËÆ IPv4 ÖÐµÄ 127.0.0.1 |
::00:xx:xx:xx:xx | 96 bits | ǶÈëµÄ IPv4 | µÍ 32 bits ÊÇ IPv4 µØÖ·¡£ÕâÒ²³Æ×÷ ¡°IPv4 ¼æÈÝ IPv6 µØÖ·¡± |
::ff:xx:xx:xx:xx | 96 bits | IPv4 Ó°ÉäµÄ IPv6 µØÖ· | µÍµÄ 32 bits ÊÇ IPv4 µØÖ·¡£ ÓÃÓÚÄÇЩ²»Ö§³Ö IPv6 µÄÖ÷»ú¡£ |
fe80:: - feb:: | 10 bits | Á´Â·»·»Ø | ÀàËÆ IPv4 µÄ»·»ØµØÖ·¡£ |
fec0:: - fef:: | 10 bits | Õ¾µã»·»Ø | |
ff:: | 8 bits | ¶à²¥ | |
001 (base 2) | 3 bits | È«Çò¶à²¥ | ËùÓеÄÈ«Çò¶à²¥µØÖ·¶¼Ö¸¶¨µ½Õâ¸öµØÖ·³ØÖС£Ç°Èý¸ö¶þ½øÖÆÎ»ÊÇ ¡°001¡±¡£ |
¡¡¡¡¹æ·¶ÐÎʽ±»ÃèÊöΪ£ºx:x:x:x:x:x:x:x£¬ ÿһ¸ö¡°x¡±¾ÍÊÇÒ»¸ö 16 λµÄ 16 ½øÖÆÖµ¡£µ±È»£¬ ÿ¸öÊ®Áù½øÖÆ¿éÒÔÈý¸ö¡°0¡±¿ªÊ¼Í·µÄÒ²¿ÉÒÔÊ¡ÂÔ¡£Èç FEBC:A574:382B:23C1:AA49:4592:4EFE:9982
¡¡¡¡Í¨³£Ò»¸öµØÖ·»áÓкܳ¤µÄ×Ó´®È«²¿ÎªÁ㣬 Òò´Ëÿ¸öµØÖ·µÄÕâÖÖ×Ó´®³£±»¼òдΪ¡°::¡±¡£ ÀýÈ磺fe80::1 ¶ÔÓ¦µÄ¹æ·¶ÐÎʽÊÇ fe80:0000:0000:0000:0000:0000:0000:0001¡£
¡¡¡¡µÚÈýÖÖÐÎʽÊÇÒÔÖÚËùÖÜÖªµÄÓõ㡰.¡±×÷Ϊ·Ö¸ô·ûµÄÊ®½øÖÆ IPv4 ÐÎʽ£¬Ð´³ö×îºó 32 Bit µÄ²¿·Ö¡£ÀýÈç 2002::10.0.0.1 ¶ÔÓ¦µÄÊ®½øÖÆÕý¹æ±í´ï·½Ê½ÊÇ 2002:0000:0000:0000:0000:0000:0a00:0001 ËüÒ²Ï൱ÓÚд³É 2002::a00:1.
¡¡¡¡µ½ÏÖÔÚ£¬¶ÁÕßÓ¦¸ÃÄÜÀí½âÏÂÃæµÄÄÚÈÝÁË£º
# ifconfig
rl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500 inet 10.0.0.10 netmask 0xffffff00 broadcast 10.0.0.255 inet6 fe80::200:21ff:fe03:8e1%rl0 prefixlen 64 scopeid 0x1 ether 00:00:21:03:08:e1 media: Ethernet autoselect (100baseTX ) status: active
¡¡¡¡fe80::200:21ff:fe03:8e1%rl0 ÊÇÒ»¸ö×Ô¶¯ÅäÖõÄÁ´Â·»·»ØµØÖ·¡£Ëü×÷Ϊ×Ô¶¯ÅäÖõÄÒ»²¿·ÖÓÉ MAC Éú³É¡£
¡¡¡¡¹ØÓÚ IPv6 µØÖ·µÄ½á¹¹µÄ¸ü¶àÐÅÏ¢£¬Çë²Î¿´ RFC3513¡£
¡¡¡¡Ä¿Ç°£¬ÓÐËÄÖÖ·½Ê½¿ÉÒÔÁ¬½Óµ½ÆäËü IPv6 Ö÷»úºÍÍøÂ磺
×ÉѯÄãµÄ»¥ÁªÍø·þÎñÌṩÉÌÊÇ·ñÌṩ IPv6¡£
SixXS ÏòÈ«Çò·¶Î§ÌṩͨµÀ¡£
ʹÓà 6-to-4 ͨµÀ (RFC3068)
Èç¹ûÄúʹÓõÄÊDz¦ºÅÁ¬½Ó£¬ Ôò¿ÉÒÔʹÓà net/freenet6 port¡£
¡¡¡¡¶ÔÓÚ IPv6 ÓÐÁ½ÖÖÀàÐ굀 DNS ¼Ç¼£ºIETF ÒѾÐû²¼ A6 Êǹýʱ±ê×¼£»ÏÖÐеıê×¼ÊÇ AAAA ¼Ç¼¡£
¡¡¡¡Ê¹ÓÃAAAA¼Ç¼ÊǺܼòµ¥µÄ¡£Í¨¹ýÔö¼ÓÏÂÃæÄÚÈÝ£¬ ¸øÄúµÄÖ÷»ú·ÖÅäÖÃÄú¸Õ²Å½ÓÊÕµ½µÄÐ嵀 IPv6 µØÖ·£º
MYHOSTNAME AAAA MYIPv6ADDR
¡¡¡¡µ½ÄúµÄÖ÷Óò DNS ÎļþÀ¾Í¿ÉÒÔÍê³É¡£ÒªÊÇÄú×ÔÒÑûÓÐ DNS Óò·þÎñ£¬Äú¿ÉÒÔѯÎÊÄúµÄ DNS ÌṩÉÌ¡£Ä¿Ç°µÄ bind °æ±¾ (version 8.3 Óë 9) ºÍ dns/djbdns(º¬IPv6²¹¶¡) Ö§³Ö AAAA ¼Ç¼¡£
¡¡¡¡ÕâЩÉèÖý«°ïÖúÄú°Ñһ̨Äú LAN ÉϵĻúÆ÷ÅäÖÃΪһ̨¿Í»§»ú£¬ ¶ø²»ÊÇ·ÓÉÆ÷¡£ ÒªÈà rtsol(8) ÔÚÆô¶¯Ê±×Ô¶¯ÅäÖÃÄúµÄÍø¿¨£¬ Ö»ÐèÌí¼Ó£º
ipv6_enable="YES"
¡¡¡¡Òª×Ô¶¯µØ¾²Ì¬Ö¸¶¨ IP µØÖ·£¬ ÀýÈç 2001:471:1f11:251:290:27ff:fee0:2093£¬ µ½ fxp0 ÉÏ£¬ ÔòдÉÏ£º
ipv6_ifconfig_fxp0="2001:471:1f11:251:290:27ff:fee0:2093"
¡¡¡¡ÒªÖ¸¶¨ 2001:471:1f11:251::1 ×÷ΪĬÈÏ·ÓÉ£¬ ÐèÒªÔÚ /etc/rc.conf ÖмÓÈ룺
ipv6_defaultrouter="2001:471:1f11:251::1"
¡¡¡¡Õ⽫°ïÖúÄú´ÓËíµÀÌṩÉÌÄÇÀïÈ¡µÃ±ØÒªµÄ×ÊÁÏ£¬ ²¢½«ÕâЩ×ÊÁÏת»¯ÎªÔÚÖØÆôʱÄܹ»±£³ÖסµÄÉèÖᣠҪÔÚÆô¶¯Ê±»Ö¸´ÄúµÄËíµÀ£¬ ÐèÒªÔÚ /etc/rc.conf ÖÐÔö¼Ó£º
¡¡¡¡ÁгöÒªÅäÖõÄͨÓÃËíµÀ½Ó¿Ú£¬ ÀýÈç gif0£º
gif_interfaces="gif0"
¡¡¡¡ÅäÖøýӿÚʹÓñ¾µØ¶ËµØÖ· MY_IPv4_ADDR ºÍÔ¶³Ì¶ËµØÖ· REMOTE_IPv4_ADDR£º
gifconfig_gif0="MY_IPv4_ADDR REMOTE_IPv4_ADDR"
¡¡¡¡Ó¦Ó÷ÖÅ䏸ÄúÓÃÓÚ IPv6 ËíµÀÔ¶¶ËµÄ IPv6 µØÖ·£¬ ÐèÒªÔö¼Ó£º
ipv6_ifconfig_gif0="MY_ASSIGNED_IPv6_TUNNEL_ENDPOINT_ADDR"
¡¡¡¡´ËºóÊ®ÉèÖà IPv6 µÄĬÈÏ·ÓÉ¡£ ÕâÊÇ IPv6 ËíµÀµÄÁíÒ»¶Ë£º
ipv6_defaultrouter="MY_IPv6_REMOTE_TUNNEL_ENDPOINT_ADDR"
¡¡¡¡Èç¹û·þÎñÆ÷½«ÄúµÄÍøÂçͨ¹ý IPv6 ·Óɵ½ÊÀ½çµÄÆäËû½ÇÂ䣬 ÄúÐèÒªÔÚ /etc/rc.conf ÖÐÌí¼ÓÏÂÃæµÄÅäÖãº
ipv6_gateway_enable="YES"
¡¡¡¡Õâ½Ú½«°ïÖúÄúÅäÖà rtadvd(8) À´ÐûʾĬÈ쵀 IPv6 ·ÓÉ¡£
¡¡¡¡ÒªÆôÓà rtadvd(8) ÄúÐèÒªÔÚ /etc/rc.conf ÖÐÌí¼Ó£º
rtadvd_enable="YES"
¡¡¡¡Ö¸¶¨ÓÉÄĸöÍøÂç½Ó¿ÚÀ´Íê³É IPv6 ·ÓÉÇëÇó·Ç³£ÖØÒª¡£ ¾ÙÀýÀ´Ëµ£¬ Èà rtadvd(8) ʹÓà fxp0£º
rtadvd_interfaces="fxp0"
¡¡¡¡½ÓÏÂÀ´ÎÒÃÇÐèÒª´´½¨ÅäÖÃÎļþ£¬ /etc/rtadvd.conf¡£ ʾÀýÈçÏ£º
fxp0:\ :addrs#1:addr="2001:471:1f11:246::":prefixlen#64:tc=ether:
¡¡¡¡½« fxp0 ¸ÄΪÄú´òËãʹÓõĽӿÚÃû¡£
¡¡¡¡½ÓÏÂÀ´£¬ ½« 2001:471:1f11:246:: ¸ÄΪ·ÖÅ䏸ÄúµÄµØÖ·Ç°×º¡£
¡¡¡¡Èç¹ûÄúÓµÓÐרÓÃµÄ /64 ×ÓÍø£¬ Ôò²»ÐèÒªÐÞ¸ÄÆäËûÉèÖᣠ·´Ö®£¬ ÄúÐèÒª°Ñ prefixlen# ¸ÄΪÕýÈ·µÄÖµ¡£
±¾ÎĵµºÍÆäËüÎĵµ¿É´ÓÕâÀïÏÂÔØ£ºftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
Èç¹û¶ÔÓÚFreeBSDÓÐÎÊÌ⣬ÇëÏÈÔĶÁÎĵµ£¬Èç²»Äܽâ¾öÔÙÁªÏµ<questions@FreeBSD.org>.
¹ØÓÚ±¾ÎĵµµÄÎÊÌâÇë·¢ÐÅÁªÏµ <doc@FreeBSD.org>.