※ 引述《CheesePig (边潜水边吃起司)》之铭言:
: 请问一下 , 目前我的电脑(XP)会拿到很多组的IPv6与default gateway
: 如下 :
: IP address :
: 2001:a:130:0:edad:e349:d4b3:7ecc
: 2001:a:130:0:214:5eff:fe08:4608
: 2001:0:130:0:edad:e349:d4b3:7ecc
: 2001:0:130:0:214:5eff:fe08:4608
: fe80::214:5eff:fe08:4608%4
: Default gateway :
: fe80::21d:70ff:fecc:1b00%4
: fe80::201:5cff:fe36:501%4
: fe80::20d:bcff:fede:9000%4
: 请问当我用这台电脑去ping 2001:0:130::1/64的时候
^^^ 这个应该是多打的
: 电脑怎么知道要用哪个IP address去做ping的这个动作?
: 然后电脑又怎么知道要从哪个default gateway出去呢?
: 还有一个问题是 :
: fe80::21d:70ff:fecc:1b00%4
: 请问 %4的意思是什么 ?
这问题分二部份
1. 2001:0:130::1 有需要透过router吗?
在IPv6中,当你要送封包给 Host A时
第一步会先去查Destination Cache
-> hit 表示之前跟这个Host已经沟通过,直接拿cache里的next hop来送
第二步,如果第一步没hit,则去查prefix-list
->prefix-list是从RA或者使用者手动设定的IPv6 prefix来决定
如果Host A存在于某一组prefix-list中 eg. "2001:0:130::/64"
表示A不需要透过router,此时发NS去讯问A之MAC,类似ipv4 direct route
第三步,若第二步还是没hit,表示Host A必须要透过Router
->此时才会从你的default gateway list (default router list)中
选出一个人来当gateway
2. Default router selection 怎么做?
这个问题是有专门的RFC在定义,最简单的作法是,找出最近收到RA
的Router并且ND状态为Reachable者为default router