IPv6編址與尋址
IPv6地址
IPv4:32 bits or 4bytes long
分為私有地址和公有地址腊敲,上網需要做一個NAT轉換,主要為了解決地址少問題恨课。
IPv6:128 bits or 16bytes : 4 tims the bits of IPv4
v6地址和v4地址表示方法不同:
用十六進制表示:如:FE08:...
16位一組险胰,中間用:隔開,如:2001:12FC:..
若以零開頭可以省略,全零的組可用"::"表示,如:1:2::ABCD:..
地址前綴長度用“/xx”表示猛们,如: 1::1/64
注:“::” 一個v6地址只能出現一次
例如同一個地址的不同表示方法:
①0001:0123:0000:0000:0000:ABCD:0000:0001/96
②1:123:0:0:0:ABCD:0:1/96
③1:123::ABCD:0:1/96
v4環(huán)回地址是127.0.0.1念脯,v6環(huán)回地址是0:0:0:0:0:0:0:1 簡寫 ::1
當電腦沒有配置IPv6的時候,0:0:0:0:0:0:0:1充當占位符弯淘,
當配置了IPv6以后绿店,在IPv6中代表默認路由,即:: 代表0.0.0.0/0
IPv6地址 = 前綴 + 接口標識
前綴:相當于v4網絡地址中的網絡ID
接口標識:相當于v4地址中的主機ID
如:2001:A304:6101:1::E0:F726:4E58/64
前綴是2001:A304:6101:1 接口標識:E0:F726:4E58 那么前綴64位庐橙,接口64位
如:2001:123::xx:xx:x/128 ,那么這個代表一個環(huán)回口地址 例如2.2.2.2/32
如:2001:123::xx:xx:x/127 ,那么這個代表一個點到點地址假勿,例如12.1.1.1/30
IPv6地址分類
v6地址分為三種地址:
①單播地址(UA) ②組播地址(MA) ③泛播地址(AA)
在IPv6中不再使用廣播的概念,所有的廣播都是用組播代替态鳖。
單播和組播都和v4相同转培。泛播即任意播,是指浆竭,在分布式場景中堡距,多個設備使用同一個泛播地址為最近的用戶提供服務。
地址類型 | 二進制前綴 | IPv6標識 |
---|---|---|
未指定 | 00..0(128bits) | ::/128 |
環(huán)回地址 | 00..1(128bits) | ::1/128 |
組播 | 11111111.xx | FF00::/8 |
鏈路本地地址(用于路由協(xié)議) | 1111111010.xx | FE80::/10 |
站點本地地址(私有地址) | 1111111011.xx | FEC0::/10 |
全局單播(公有地址) |
單播
單播地址用于一對一的連接兆蕉,IPv6單播地址有以下類型:
- 未指定的地址羽戒,環(huán)回地址和IPv4兼容地址
IPv4兼容地址,是把v6地址的后32位虎韵,用來存放v4地址易稠,例如:::192.168.30.1 = ::C048:1E01 - 本地鏈路地址,簡稱Link-Local 地址
FE80::/10 - 本地站點地址包蓝,簡稱Site-Local地址
FEC0::/10 - 可聚合全球單播地址,簡稱AGUA地址
2000::到3FFF:FFFF:FFFF:FFFF.....
AGUA地址驶社,前三位必須是001,后十三位為TLA测萎,再后8位為RES區(qū)域位亡电,再往后24位為NLAs,是網絡位硅瞧,供運營商進行分配份乒,之后的16位為SLA,為子網位腕唧,分配給企業(yè)用或辖,企業(yè)拿到的就是2::/48的地址。
組播
組播地址用于一到多的連接枣接,地址主要是FF00::/8
前八位為FF颂暇,后四位代表標志位,Flag位為0代表永久的但惶,Flag位為1代表暫時的耳鸯,而再后四位代表范圍湿蛔,
范圍為1代表本地接口范圍,2代表本地鏈路范圍县爬,5代表本地站點范圍煌集,8代表組織結構范圍,E代表全球范圍捌省。
例如FF02::9 這個地址FF開頭苫纤,是個組播地址,第三位為0纲缓,代表永久分配卷拘,第四位為2,代表本地鏈路范圍祝高。
組播指定地址:
組播地址 | 范圍 | 含義 | 描述 |
---|---|---|---|
FF01::1 | 節(jié)點 | 所有節(jié)點 | 在本地接口范圍的所有節(jié)點 |
FF01::2 | 節(jié)點 | 所有路由器 | 在本地接口范圍的所有路由器 |
FF02::1 | 本地鏈路 | 所有節(jié)點 | 在本地鏈路范圍的所有節(jié)點 |
FF02::2 | 本地鏈路 | 所有路由器 | 在本地鏈路范圍的所有路由器 |
FF05::2 | 站點 | 所有路由器 | 在一個站點范圍的所有路由器 |
節(jié)點必需的地址
任何一個v6節(jié)點都需要開啟以下地址:
每個接口的本地鏈路地址栗弟、環(huán)回口地址、被分配的單播地址工闺、
所有節(jié)點組播地址乍赫、主機所屬的組播組地址、本地站點地址
所用的每個單播和任播地址的被請求節(jié)點組播地址(相當于v4的arp協(xié)議陆蟆,使用ICMPv6)
被請求節(jié)點組播地址
就是本地鏈路范圍的組播地址雷厂,前面是FF02:,中間是全零叠殷,然后是FF/104改鲫,即FF02::1:FF/104
IPv6在Ethernet技術上
IPv6擁有一個特定的Ethernet協(xié)議ID,是0x86DD林束,用來分辨是IPv6還是IPv4像棘。
Destination Ethernet Address | Source Ethernet Address | Type | header and payload |
---|---|---|---|
0x0800 | IPv4 | ||
0x86DD | IPv6 |
組播在Ethernet中的映射
如果一個數據包是三層的封裝發(fā)送到組播地址,你肯定需要一個目的MAC地址壶冒,那么這個目的MAC如何表示缕题?
答:把你要發(fā)送的這個三層的組播地址的最后三十二位拿出來,當做目標MAC胖腾,然后往前補16位的33:33.
即烟零,比如發(fā)送的組播地址是FF02::1:FF17:FC0F,那么最后32位FF17:FC0F用來做MAC地址,并補齊地址為:33:33:FF17:FC:0F,這就是IPv6在以太協(xié)議棧中的地址映射胸嘁。
不難發(fā)現瓶摆,FF02::1:FF17:FC0F,前面是FF02凉逛,中間全零性宏,后端是FFxx,這很顯然是一個被請求節(jié)點組播地址状飞。
接口ID的生成
v6地址中都會有接口ID毫胜,這是由MAC地址構成书斜,通過48bit的MAC地址轉化為64bit的接口ID,肯定是擴充得到的酵使,通過EUI-64的擴充方式荐吉。
通過實驗能看出猖任,IPv6的接口地址中式插入了FF:FE字段补履,并且在地址的第7bit改為了1.
IPv6地址配置技術
IPv6可以發(fā)現鄰居,其實通過ICMPv6來實現的太伊。(NDP_RFC2461)
IPv6鄰居發(fā)現原理:
首先PC1發(fā)送一個ICMP135類型鄰居請求消息(NS)到PC2的被請求節(jié)點組播地址雇锡,PC2收到后,回復一個ICMP136類型鄰居宣告消息(NA)到IPC1僚焦,這樣在PC1就記錄下了PC2的MAC地址遮糖,類似于v4網絡中,將目標MAC存放在自己的ARP緩存表中叠赐。
我們抓包看看欲账,在v6網絡中是通過ICMPv6建立鄰居關系,最后Neighbor Solicitation和Neighbor Advertisement就代表著建立鄰居請求和鄰居宣告的完成芭概。
啟用IPv6
- 啟用IPv6流量轉發(fā)
Router(config) ipv6 unicast-routing //默認關閉赛不,跑路由協(xié)議需開啟,其實就是加入組播地址 FF02::2
Router(config) ipv6 ref load-sharing original //等價路由下,基于hash算法的數據報流量分擔
- 通過在接口上配置IPv6地址罢洲,開啟接口對IPv6支持
Router(config-if-GigabitEthernet 0/0)#ipv6 address 2001:12::1/64 //PC機模式
- 也可以不配置v6地址踢故,先配置本地鏈路地址
Router(config-if-GigabitEthernet 0/0)#ipv6 enable //默認情況下,不可用 PC機模式
IPv6的自動配置
IPv6地址的自動配置分為【無狀態(tài)自動配置】和【有狀態(tài)自動配置】惹苗。
IPv4中的DHCP配置殿较,是一種有狀態(tài)自動配置,是通過DHCP這種應用層協(xié)議來實現的桩蓉。
IPv6中淋纲,可以通過ICMPv6實現無狀態(tài)自動配置。
PC通過ICMP133向FF02::2發(fā)送一個RS請求院究,路由器收到后洽瞬,通過ICMP134向目的地址FF02::1發(fā)送一個RA消息本涕。這些地址都是基于Ethernet的。
FF02::2(鏈路上的所有路由器的組播地址) FF02::1(所有節(jié)點的組播地址)
IPv6路由選擇(RiPng伙窃、OSPFv3)
RIPng中的主要更新
- UDP端口號:IPv4中的RIP使用UDP520號端口菩颖,IPv6的RIPNG使用UDP521號端口
- 本地鏈路地址:使用本地鏈路地址作為更新消息的源地址
- 組播地址:IPv4中的RIP使用224.0.0.9,IPv6中的RIPng使用FF02::9
- Metric值:在RIPng中为障,默認情況下進入路由表之前的RIPng度量值+1
-
一些時間參數:見 “ show ipv6 rip”
負載均衡功能:RIPng支持默認16條路徑進行負載均衡(Max:64條)
OSPFv3
IPv6的OSPF和IPv4的OSPF差別并不大晦闰,下面的實驗中,同時跑了IPv4和IPv6協(xié)議棧鳍怨,基于接口的宣告可以加快鄰居的建立關系鹅髓。
基于IPv4和IPv6網絡的共存和整合
-雙棧協(xié)議(Dual Stack):網絡中的主機、服務器和路由器可以同時使用IPv4和IPv6協(xié)議棧京景。
-隧道協(xié)議(Tunneling):隧道使孤立的IPv6主機窿冯、服務器、路由器和域利用現有的IPv4基礎設施與其他IPv6網絡通信确徙。
例如在兩端都是IPv6的網絡醒串,中間是IPv4的網絡,這時候鄙皇,如何讓兩端IPv6的網絡能夠實現OSFP路由協(xié)議的宣告芜赌,這時候使用tunneling,為IPv6地址做一層IPv4的封裝伴逸,然后到對端后又進行解封裝除去IPv4的頭部缠沈,實現IPv6的互通。
以上就是目前IPv6的相關原理與配置方法错蝴,臨近元旦終于有時間進行整理一下了洲愤。