APPENDIX A. ¹êÅçºô¸ô»¡©ú
¬°¤F¶i¤@¨B¹ê¦a¤F¸ÑIPv6¦bµL½uºô¸ô¤Wªº¦æ¬°¡A¨Ã´M¨D¥i¯àµo¥Íªº§xÃø¡A§Ú̧Q¥Î¥HLinux¬°§@·~¨t²ÎªºPC¥D¾÷«Ø¸m¤F¤@®M²©öªºIPv6¹êÅçºô¸ô¡C
§Ų́ϥΤF¥|¥xPentium III PC¥H¤Î¤@¥xPentium Notebook¨Ó«Ø¸m³oÓ¹êÅçºô¸ô¡A¨ä¤¤¨â¥x§@¬°IPv6 Router¡A¨ä¥L¥D¾÷«h·í§@¤@¯ëv6 Host¡C
¥Î¨Ó³s±µ³o´X¥x¥D¾÷ªº¤¶±¡A¤À¦¨¦³½u¤ÎµL½u¨âºØ¡A¦b¦³½u³¡¤À§Ú̩ҨϥΪº¤@¯ë100M Ethernet¡A¦Ó¦bµL½u³¡¥÷«h¬O¨Ï¥ÎLucentªºORINOCO 802.11 silver PC card[1] (IEEE 802.11b)§@¬°¤¶±¡C¦b¤¶±¥d¤§¥~¡A¥t¥~§@¬°´ú¸Õ¥Îªº¨â¥xLucent Orinoco AP-1000«¬Access Point¡A³o¨â¥xAP¥Dn¬O¥Î¨Ó§@¬°¸ÕÅçMobile Host¯à§_¦bAP¤§¶¡²¾°Ê¨Ã¤´¯à«O«ù»Pºô¸ô¤§¶¡ªº³s½u©Ò¥Î¡C
¦b¹ê»Ú¬[³]®É¡A¬°¤F°§C¬[³]½ÆÂø«×¨Ã³v¨B½T»{¦UÓComponent³£¯à¥¿½T¹B§@¡A§Ú̳]©w¤F¤£¦Pªº¶¥¬q¨Ó¤@¨B¨B¤F¸Ñ²{¦³ªº³nµwÅé¯à¦P®É¹ïIPv6»Pwireless communication§@¨ì¤°»òµ{«×ªº¤ä´©¡C
¥H¤U¬°¦b¹êÅçºô¸ô¤¤ªº¥D¾÷¦Cªí¡A
|
Host Name |
O.S |
Function |
|
Odyssey |
RedHat 7.2[2] |
Router |
|
Drake |
RedHat 7.2 |
Router |
|
Notebook |
RedHat 7.2 |
Wireless Host |
|
Mobile_1 |
RedHat 7.2 |
Wire Host |
|
Daemon |
Windows 2000[3] |
Wire Host |
Table 2. Host List
§Ú̪º¥Ø¼Ð¬OÆ[¹îMobile
Host¦bIPv6µL½uºô¸ô¤º§@²¾°Ê©Ò¤Þ°_ªº°ÝÃD»Pª¬ªp¡A²³æªº²¾°Ê¥i¥H§Q¥Î¤@¥D¾÷¸ó¶V¨âÓ¾Fªñªººô°ì¨Ó¹F¦¨¡A¦Ó¨âÓºô°ì¥i¥H§Q¥Î¦P¤@¥xrouterªº¤£¦Pinterface¨Ó¹F¦¨¡A¦ý¬O¬°¤FÅýpacket¦b¤£¦Pºô°ì¤¤Âà°eªº®ÄªG§ó©öÆ[¹î¡A§Ų́M©w§â¨âÓºô°ì¤À§O§Q¥Î¤£¦P¥xrouter¤Wªºinterface¨Ó¤Á¤À¡A³o¨Ï±o¦b¹êÅçºô¸ô¤¤³Ì°_½Xn¦³¨â¥xrouter¡A¤~¯à¹F¨ì¤Wzªº®ÄªG¡C
¦Ó³o¼Ëªº³]p¤]¼W¥[¤F³¡¥÷§xÃø«×¡A¦]¬°packet¤£·|¥u¸g¹L¤@Óhop¡A¦b¸g¹L¨âÓhop¥H¤W®É¡An§´µ½³]©wªº´N¤£¥u¬O¤@¥xrouter¤Wªº¦UÓ¤¶±¡A¦ÓnÅýrouter¶¡©¼¦¹¯à¥æ´«packet¡C


Figure 9. A simple setting in Experimental Network
²Ä¤@¨B¡A§Ú̧Ʊæ¯à¥ý½T»{²{¦³ªºLinux»PMicrosoftªºIPv6 implementation¬O§_¦³®Ä¡C§Q¥Î²Ä¤@ÓScenario¡Aº¥ý¥i¥H½T»{IPv6 router¬O§_¨ã¦³RFC2460©Ò´yzªºRouter behavior¡A¦b³o¤è±¡A§Ú̵o²{³oÓª©¥»ªºrouter¨Ã¤£·|©w®Éµo¥XRA (Router Advertisement) ¡A©|»Ý¥t¥~¦w¸Ë¨ä¥Lapplication[4]¨Ó»²§Urouter¨ÓµoRA¡AÅý¨ä¤UªºIPv6 host¯à®Ú¾Ú¦¹RA¨Ó¶i¦æstateless auto-configuration¡C
¦b¥¿¦¡¶i¦æ¸ê¶Ç¿é«e¡A§ÚÌn¥ý½T©w©Ò¦³ªºIPv6 link³£¬O³qªº¡A¦b³o¤è±¦³½u³¡¥÷¸û¨S¦³°ÝÃD¡A¤ñ¸û¦³°ÝÃDªº¬Owireless¬q¡C¥Ñ©ówireless¬qªº¤¶±¦³¦hºØª©¥»¡A³y¦¨¨Ï¥Î¤£¦Pª©¥»ÅX°Êµ{¦¡ªº¤¶±µLªk¤¬³q¡A¦Ó¦b¤£¦P§@·~¨t²Î¤W³oÓ°ÝÃDÅã±o§ó¥[ÄY«¡A¨Ã¤£¬O©Ò¦³ª©¥»ªºÅX°Êµ{¦¡³£¯àÅý¤¬³q¡A·í±¡ªp¦¨¬°»PAP·¾³q®É¤S·|¦³©Ò¤£¦P¡A¬°¤F°§C½ÆÂø«×¡A©Ò¦³¦bLinux¤Wªºwireless card³£¨Ï¥Î¥ÑLucentµo¥Xªº¦P¤@ª©¥»Driver[5]¡C
¥Ñ©óRouter¥»¨«K¨ã¦³wireless interface¡A¬G¦b¦¹ºô¸ô¤¤¤£¨Ï¥ÎAP¡AÅX°Ê¤@Ówireless interface®É¥i¥H¦³¤TºØ¤£¦Pªº¼Ò¦¡¿ï¾Ü{Managed¡UAd-hoc¡UAP}¡A¥Ñ©ó¥Ø«e¥i¥ÎªºDriver¨Ã¥¼±NAPªº¥\¯à¹ê§@§¹¦¨¡A¦ÓManaged¼Ò¦¡¤S¥²¶·n¥t¥~¦³AP¦s¦b¡A¬G±Ä¥ÎAd-hoc¼Ò¦¡¡A¦P¼Ëªº¦b¤@¯ëHostºÝªºwireless interface¤]¤@¼Ë³]©w¬°Ad-hoc¼Ò¦¡¡C
¦bRouter³¡¥÷¡A¤@¤è±¥Ñ©ótopology¬Û·í²³æ¤@¤è±¤]¬°¤F°§C½ÆÂø«×¡A§Ų́S¦³¨Ï¥Î¥ô¦órouting protocol¡A§ï¥H¦b©Ò¦³ªºRouter¤W³]©wstatic route¡A¨Ã¥B¤â°Ê³]©wRouter¤Wªº©Ò¦³Interface[6]¡C
²Ä¤@Ó²³æªº´ú¸Õ¦p¹Ï9¡A²z·Qªºª¬ªp¬°Daemon»PNotebook¨â¥x¥D¾÷³£¯à¦b¶}¾÷«á¶i¦æauto-configuration¡A¨Ã¦b§¹¦¨³o¶µ°Ê§@«á¯àª½±µ¦s¨úºô¸ô¸ê·½¡C¦b³oÓ´ú¸Õ¸Ì¡A§Ú̸չÏÅýDaemon»PNotebook¦b¶}¾÷«á¹ï©¼¦¹¶i¦æ¶Ç¿é¡CnÅý³o¼Ëªº°Ê§@§¹¦¨¡A¥ý¨M±ø¥ó¬O©Ò¦³ªºHost³£¥²¶·¥ýÂÇ¥Ñauto-configuration¨ú±ounicast address¥H¤Îdefault routerªº¬ÛÃö¸ê°T¡A·ípacket°e¦Ü¤¤¤¶ªºrouter®É¡Arouter¥²¶·n¯à°÷¥ý¶i¦æ¨CÓhopn§¹¦¨ªº°ò¥»°Ê§@¡A¦pÀˬdHop Limit¡Acheck sumµ¥¡A¦A®Ú¾ÚIPv6 routing table¨M©wn±Npacket forward¥Xªº¤è¦V¡A¦b¥t¤@ºÝªºHost¤]¥²¶·n¯à»{¥X°e©¹¦Û¨ªºpacket¨Ã¶i¦æ¦¬¨úpacketªº°Ê§@¡C
²Ä¤@Ó´ú¸Õ¬Û·íªº¦¨¥\¡A§ÚÌ¥i¥H§Q¥Îicmpv6¨Ó¿ë»{©Ò¦³host¬O§_¤´¦b½u¤W¡A¤]¥i¥H¶i¦æ¤@¯ëIP packetªº¶Ç°e¡A§Ú̧Q¥Î×§ï¹L¯à¤ä´©IPv6 socketªºtelnet»Pftp¡A¨Ó¬Ý¤@¯ëIP packet forwardingªº®ÄªG¡Aµ²ªG¨âºØÀ³¥Îµ{¦¡³£¹B§@ªº¬Û·í¶¶§Q¡C
±µ¤U¨Ó§ÚÌn§@ªº¬O«Ø¥ß°_³sµ²¨âÓrouterªººô¸ô¡A¬°¤F°§C½ÆÂø«×±Æ°£¤£Ã©wªº¤¸¥ó¡C¦b³oÓ¹êÅ礤¡A©Ò¦³ªº³sµ²³£¬O¦³½uªº¡A³o¬O¬°¤F±NµL½u¬É±ªº³]©w»Prouterªº³]©w°Ê§@¤À¶}³B²z¡A¦A¤À§O½T©w¨âªÌ³£¬O¥i¦æªº¤§«á¡A¦A±N¨âªÌ¦X¨Ö¡C
¦b³oÓ¶¥¬q(¦p¹Ï10)¡A§Ú̩ҾD¹J¨ìªº¥Dn§xÃø¬°router¶¡routing tableªº³]©w°ÝÃD¡A¥Ñ©órouter¶¡¤£·|§Q¥Îauto-configuration§ä¥X¨ä¥Lrouter¡A¦b³]©wrouting table®É°£¤Fn³]©w¿é¥X¬É±¥~¡A©|n«ü©ú¤U¤@¯¸routerªºIP¦ì§}¡A¤~¯à¯u¥¿Åýpacket¦b¨âÓrouter¶¡§@forwarding[¸Ô²Ó³]©w½Ð¨£ªþ¥ó¤G]¡C


Figure 10. Experiment for 2 hop forwarding
¦b§¹¦¨³]©w¤§«á¡A§Ú̱Ĩú¸ò¤W¤@Ó¹êÅçÃþ¦üªº¤è¦¡¨Ó´ú¸Õ¸g¹L¨â¯¸ªºforwarding¯à§_¦¨¥\¡A§Q¥Îicmpv6¡Btelnet¥H¤Îftpªº¶Ç¿é¨ÓÆ[¹îpacket¦b¨âÓrouter¶¡¬O§_¦³¦p¹w´Á¯ëªº¶i¦æÂà°e¨Ã¸g¹L¾A·íªº³B²z¡Cµ²ªG¬Û·í¥O¤H®¶¾Ä¡A¦¹®Éºô¸ô¤º©Ò¦³ªº¸`ÂI¬Ò¥i¤¬¬Û³s³q¶i¦æ¶Ç¿é¡C
³Ì«á¡A§Ú̸չϱN¤Wz¨âºØ¤£¦P¯S©Êªº¤¸¥ó¦X¨Ö¦b¤@°_¶i¦æ´ú¸Õ¡A¥H¯u¥¿Æ[¹îmobile host¦bwireless IPv6 network¤ºªº¦æ¬°¡C
ºô¸ôtopology¦p¹Ï11¡A¨C¥xrouter¤W¤À§O¦³¤TÓinterface³sµ²¦Ü¤£¦Pªº¤lºô¬q¡A¨ä¤¤¦U¦³¤@ÓµL½u¬É±´£¨Ñ¤@ÓµL½uºô¬qªº³sµ²¡A¨ä¾lªº¬É±¬Ò¬°¦³½u¡C³o¼Ë³]pªº¥Øªº¦b²£¥Í¤@Ósingle hop wireless network¡AÅýmobile host§Q¥ÎµL½u¬É±³sµ²¤Wºô¸ô¡A¨Ã¥i¥H¸ó¶Vºô¬q«á§ï¸g¥Ñ¥t¥~¤@Ógateway±µ¤Wºô¸ô¡C¨ä¥Lªº¥D¾÷¦prouter¡Bcorresponding node«h¤£·|§ïÅÜ¥L̪ººô¸ô³s±µÂI¡C
§ÚÌÅýNotebook¦bOdyssey©ÒÁÒ½d³ò¤º¶}¾÷¡AÅýNotebook¥HOdyssey¬°¤@¶}©lªºdefault router¡A¥ý¶i¦æ©Ò¦³node¤§¶¡ªº³sµ²´ú¸Õ¡AY¤@¤Á¥¿±`(§Y©Ò¦³node¤§¶¡³£¬°reachable)¡A¦A±NNotebook²¾°Ê¨ìDrake©ÒÁÒ¤§µL½uºô¸ô½d³ò¤º¡AÆ[¹îNotebook¦b³oºØhandoff¤U·|¦³¤°»ò¼Ëªº¦æ¬°»P°ÝÃD¡C²z½×¤W¥Ñ©ó¦b¸ó¶V¤lºô¸ô«áMobile Host·|¦b·sªºrouter½d³ò¤º¶i¦æ¥t¤@Óauto-configuratoin¥H¨ú±o¦b¸Óºô¸ô¤º¤§¦XªkIP¡A¨Ã§ïÅÜ¥¦ªºdefault router¦¨Drake¡CÁöµM즳connection·|¦]¦¹¤¤Â_¡A¦ýNotebook¥i¦bhandoff§¹¦¨«á¶}±Ò·sªºconnection¡C
¦b´ú¸Õ®ÉÁöµM¾D¹J¨ì¨Ç³\§xÃø¡A¥Dn¬O¥Ñ©órouter¤WªºinterfaceÅܦh¨Ï±o¦b³]©wrouting table®É¥²¶·§ó¥J²Ó¡A©Ò©¯µ²ªG³Ì«áÁÙ¬O¦¨¥\ªº¡C
Figure 11. Experiment for integrated test


Windows
2000 IPv6 package installation
Requirement¡RWindows 2000 with Service
Pack 2
Download Site¡Rhttp://www.research.microsoft.com/msripv6/
Documentation¡Rhttp://www.research.microsoft.com/msripv6/docs/config.htm
¦w¸Ë»¡©ú¡R¦b¨ú±omsripv6-bin-1.4.exe¦Û¸ÑÀÉ«á¡A¥i¥H±N¥¦¸ÑÀ£ÁY¦Ü·Q©ñ¸m¤§³B¡A±µ¤U¨Ó¦b±±¨î¥xàºô¸ô©M¼·¸¹³s½uà±ý¦w¸ËIPv6¨ó©w¤§³s½u¤W¿ï¤º®e¡A¥[¤J·s³q°T¨ó©wà¿ï¾Ü¥ÑºÏ¤ù¦w¸Ë¡A¦¹®É±NÀɮ׫ü¦Vèè¸ÑÀ£ÁYªºIPv6kit¥Ø¿ý¤º¡A¦A¿ï¨úMSR
IPv6 PROTOCOL§Y¥i§¹¦¨¦bwindows¤WªºIPv6¦w¸Ë¡C
Linux Host installation
Requirement¡RRedHat 7.2¡BRADVD(required for
router)
Download Site¡RRedHat¡Ahttp://www.redhat.com¡B
RADVD¡Aftp://ftp.cityline.net/pub/systems/linux/network/ipv6/radvd/
Documentation Site¡Rhttp://www.bieringer.de/linux/IPv6/
http://www.csc.fi/~psavola/ipv6/ipv6.html
http://www.wcug.wwu.edu/ipv6/faq/
¦w¸Ë»¡©ú¡R³q±`genericªºkernel¤¤¤£·|¥]§t¦³IPv6 component¡A©Ò¥H¥²¶·¥Ñ§Ú̦ۤvenable¦bNetworking Option¤¤ªºIPv6
Option¡C¥H¤U¬°¦bLinux¤U«Ø¥ß¤@Ó¦³IPv6 functionality kernelªº¨BÆJ¡C
u
/usr/src/{CURRENT_KERNEL}/make
menuconfig¡C
u
Enable
Networking optinsàThe IPv6
protocol (EXPERIMENTAL)¡A¦b³oÓ³¡¥÷¥i¥H¨Ì¨Ï¥ÎªÌ»Ýncompile¦¨kernel module©Îª½±µ±N¥¦compile¶ikernel¤º¡C
u
Save current
setting for kernel and Leave menuconfig¡C
u
¤§«á«K¥i¨Ì·Ó¤@¯ë½sĶkernelªº¤è¦¡¨Ó½sĶ¥¦¡A¤@¯ë¨Ï¥Îªº¤è¦¡¬°/usr/src/{CURRENT_KERNEL}/make clean;make
dep;make bzImage
l
Y¬°kernel
module«h»Ý¥t¥~make modules¦Amake modules_install
Y¤@¤Á¶¶§Q¡A¥un«·s±Ò°Ê³oÓ½sͦnªºkernel¡A«K¯à¶}©l¨Ï¥ÎIPv6¨ó©w¡C¥H¤U¬°¦bLinux¤U¤@¥D¾÷¶}¾÷¨ú±oLink-Local Address à ¦¬¨ì RA à ¨ú±o Global unicast Addressªº¥Ü·N¹Ï¡C