• PPP与IPV6

    • PPP(链路建立过程+认证)

      • 链路建立过程

      • PPP认证

        • PPP的认证类型分为两种:PAP和CHAP

        • PPP之PAP,即password autentication protocol,密码认证协议。给协议需要在两个设备之间的链路上,传输密码。但是密码是明文的,非常不安全。

        • PPP之CHAP,chanlendge handshake authentication protocol,挑战握手协议。该协议在链路上发送PPP认证的报文的时候,事实上是不带密码的,但是可以通过携带的认证信息,就可推算出两边的认证密码是否相同。的确非常安全。

        • PPP认证配置思路

          1. 认证端(服务端)-端口启用认证服务。
          2. 认证端-设备配置用户名与密码
          3. 被认证端(客户端)-端口配置发送的用户名和密码
          4. 在设备之间,验证端口的状态是否为:LCP Opened,NCP Opened
      • PPP之PAP认证

        • 两次握手图解

        • 认证过程

          1. 被认证端(客户端)发起认证请求,其中携带着用户名和密码。
          2. 认证端(服务器)收到信息之后,在自己的aaa数据库,查看是否存在相同的用户名与密码,如果有,则回复一个authenticate-ack,表示认证成功;反之,回复一个authenticate-nak,则认证失败。
        • 特点总结

          1. PAP支持单边和双边认证,使用报文的类型,仅仅是(authenticate-ack/nak)
          2. 认证端的接口开启的“ppp authenticate-mode pap”仅仅对接收的报文起作用,对于发出的报文,是不进行认证的。
          3. 如果一个没有开启“认证功能”的端口上,收到一个PAP的用户名与密码,端口直接忽略掉相应的字段,正常接收PPP报文。
      • PPP之CHAP认证

        • 三层握手图解

        • 认证过程(三次握手)

          • 认证端(服务端)发送CHAP用户名

            1. 认证过程,首先是由服务端发起的,当我们在端口上指定了认证类型CHAP(ppp authenticate-mode chap)的时候,服务器端口就已经开始尝试发送CHAP的第一个报文-挑战报文,该报文中包含了:报文ID+随机数。同时,当我们端口上配置了命令:ppp chap user huawei之后,该报文中还会再次携带一个“用户名”-huawei。
            2. 被认证端(客户端)接收到认证报文之后,会首先查看该端口上有没有配置“ppp chap user hcie”。如果有的话,则使用该端口密码hice以及接收报文中的“报文ID+随机数”,一起进行HASH运算,最终计算出一个HASH值,然后形成一个reponse报文,该报文中包含的是:HASH值,以及本端口上配置的“用户名”-ppp chap user huawei,返回给服务端(认证端)。如果端口没有配置密码的话,则使用接收到的“挑战报文”中的“用户名”-huawei,去自己本地aaa数据库中,查找一下用户名huawei对应的密码,然后使用这个查询到的密码-hcie,和前面报文中的“报文ID+随机数”,进行HASH运算,形成HASH值,然后将端口上配置的用户名,一起形成reponse报文,返回给认证端(服务端)。
            3. 认证端(服务器端)接收到返回的reponse报文(HASH值+用户名),使用该报文中的用户名,去自己本地aaa数据库中,查找出对应的密码,并使用该密码与挑战报文中的报文ID+随机数,一起进行HASH运算,得到一个HASH值,然后将其与reponse中的HASH值进行比较,如果相同,则认证成功,反之,认证失败。
          • 认证端(服务端)不发送CHAP用户名

            1. 认证过程,首先是由服务器发起的,当我们在端口上指定了认证类型为CHAP(ppp authenticate-mode chap)的时候,服务器端口就已经开始尝试发送CHAP的第一个报文-挑战报文,该报文中包含了:报文ID+随机数
            2. 被认证端(客户端)接收到认证报文之后,会首先查看该端口上配置的“ppp chap user hcie”。则使用该端口密码hice以及接收报文中的“报文ID+随机数”,一起进行HASH运算,最终计算出一个HASH值,然后形成一个reponse报文,该报文中包含的是:HASH值,以及本端口上配置的“用户名”-ppp chap user huawei,返回给服务端(认证端)。如果接收端口上没有配置密码,则挑战失败。
            3. 认证端(服务器端)接收到返回的reponse报文(HASH值+用户名),使用该报文中的用户名,去自己本地aaa数据库中,查找出对应的密码,并使用该密码与挑战报文中的报文ID+随机数,一起进行HASH运算,得到一个HASH值,然后将其与reponse中的HASH值进行比较,如果相同,则认证成功,反之,认证失败。
          • 特点总结

            1. CHAP认证过程,包含了三次握手(Challenge →reponse→success/failure)
            2. CHAP认证非常的安全,因为中间过程是不传输任何密码的
            3. CHAP和PAP一样,都支持单边与双边认证
            4. CHAP的认证端配置“发送用户名”的行为是可选的
            5. CHAP的认证端在“发送用户名”的时候,对方设备的端口“可以配置密码”,也可以不配置密码
            6. CHAP的认证端“不发送用户名”,那对端设备的端口就必须要“配置密码”
            7. 无论CHAP认证端是否“发送用户名”,对端设备的端口都必须“配置用户名”
            8. 客户端返回的报文中,所携带的“用户名”,仅仅是由客户端的接口上配置的“ppp chap user ***”来决定的,与认证端发送过来的用户名,没有关系。
            9. 无论是CHAP还是PAP认证,认证端“认证模式ppp authenticate-mode ***”是一定有配置的
            10. 无论是CHAP还是PAP认证,被认证端“认证用户ppp chap|pap user ***”是一定有配置的
      • 案例:PPP之PAP认证

        • 拓扑

        • 需求

          1. 如图配置端口的IP地址
          2. 将R1配置为认证端,用户名和密码是huawei/hcie,使用的认证的方式为pap
          3. 确保R1与R2之间可以互相ping通
        • 思路

          1. 确保端口使用的协议时PPP
          2. 确保端口的IP地址配置正确
          3. 在R1的端口上,启用认证功能
          4. 在R1上配置用于PPP认证的用户名和密码
          5. 在R2的端口上配置,通过PAP方式发送的用户名和密码
          6. 测试R1与R2之间的连通性,以此来证明:它们两者之间认证是否成功
        • 配置

R1:
undo terminal monitor
system-view
sysname R1
interface Se0/0/0
ip address 192.168.12.1 24
ppp authentication-mode pap
quitR2:
undo terminal monitor
system-view
sysname R2
interface Se0/0/0
ip address 192.168.100.1 24
ppp pap local-user huawei password cipher hcie
quit此时,查看一下信息:
@在R1/R2上查看端口的信息,确保LCP Opened ,IPCP Opened
[R1]dis interface Se0/0/0
Serial0/0/0 current state : UP
Line protocol current state : UP
Last line protocol up time : 2022-07-07 10:26:51 UTC-08:00
Description:
Route Port,The Maximum Transmit Unit is 1500, Hold timer is 10(sec)
Internet Address is 192.168.12.1/24
Link layer protocol is PPP
**LCP opened, IPCP opened**
Last physical up time   : 2022-07-07 10:26:48 UTC-08:00
Last physical down time : 2022-07-07 10:26:45 UTC-08:00
Current system time: 2022-07-07 10:32:25-08:00Interface is V35Last 300 seconds input rate 4 bytes/sec, 0 packets/secLast 300 seconds output rate 4 bytes/sec, 0 packets/secInput: 8180 bytes, 633 PacketsOuput: 8245 bytes, 637 PacketsInput bandwidth utilization  : 0.05%Output bandwidth utilization : 0.05%[R2]dis interface Se0/0/0
Serial0/0/0 current state : UP
Line protocol current state : UP
Last line protocol up time : 2022-07-07 10:26:51 UTC-08:00
Description:
Route Port,The Maximum Transmit Unit is 1500, Hold timer is 10(sec)
Internet Address is 192.168.100.1/24
Link layer protocol is PPP
**LCP opened, IPCP opened**
Last physical up time   : 2022-07-07 10:26:49 UTC-08:00
Last physical down time : 2022-07-07 10:26:45 UTC-08:00
Current system time: 2022-07-07 10:35:43-08:00Interface is V35Last 300 seconds input rate 4 bytes/sec, 0 packets/secLast 300 seconds output rate 4 bytes/sec, 0 packets/secInput: 8645 bytes, 673 PacketsOuput: 8678 bytes, 674 PacketsInput bandwidth utilization  : 0.05%Output bandwidth utilization : 0.05%@在R1/R2上查看路由表信息,确保有对端接口IP地址的/32位主机路由
[R1]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: PublicDestinations : 5        Routes : 5        Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0192.168.12.0/24  Direct  0    0           D   192.168.12.1    Serial0/0/0192.168.12.1/32  Direct  0    0           D   127.0.0.1       Serial0/0/0**192.168.100.1/32  Direct  0    0           D   192.168.100.1   Serial0/0/0**[R2]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: PublicDestinations : 5        Routes : 5        Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0**192.168.12.1/32  Direct  0    0           D   192.168.12.1    Serial0/0/0**192.168.100.0/24  Direct  0    0           D   192.168.100.1   Serial0/0/0192.168.100.1/32  Direct  0    0           D   127.0.0.1       Serial0/0/0@在R1/R2上ping对方的端口IP地址,确保可以互通
[R1]ping 192.168.100.1PING 192.168.100.1: 56  data bytes, press CTRL_C to breakReply from 192.168.100.1: bytes=56 Sequence=1 ttl=255 time=30 msReply from 192.168.100.1: bytes=56 Sequence=2 ttl=255 time=30 msReply from 192.168.100.1: bytes=56 Sequence=3 ttl=255 time=30 msReply from 192.168.100.1: bytes=56 Sequence=4 ttl=255 time=30 msReply from 192.168.100.1: bytes=56 Sequence=5 ttl=255 time=30 ms--- 192.168.100.1 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 30/30/30 ms
  - 关键命令总结- interface Serial0/0/0→ppp authentication-mode pap
1.该命令的作业是:让端口Serial0/0/0启用PPP认证功能
2.什么是启用认证
3.指的是:给端口收到的报文,必须要有用户名和密码,并且是以PAP的形式发送过来的但是,但我们在此端口是配置了这个命令以后,对该端口发送出去的报文内容是没有任何要求的
4.上述的命令,仅仅针对端口上“接收到的报文”起作用。并且,如果端口没有配置这个命令,即使是收到了带有认证用户名和密码的报文,该端口也会默认的将这些认证参数忽略掉,不会影响PPP链路的建立
    - interface Serial0/0/0→ppp pap local-user huawei password cipher hcie
1,该命令的作用:在该端口发送出去的PPP报文,必须以PAP的形式,发送用户名huawei和密码hcie
    - 我们上述配置的是PPP的单边认证,与此同时,R2也可以配置为认证端,即实现PPP的双边认证- 案例:PPP之CHAP认证- 拓扑![](https://secure2.wostatic.cn/static/k7VmF4ssYcmMQRyrwidsA3/image.png)- 需求1. 如图配置端口的IP地址2. 将R1配置为认证端,用户名和密码是huawei/hcie,使用的认证的方式为chap3. 确保R1与R2之间可以互相ping通- 思路1. 确保端口使用的协议时PPP2. 确保端口的IP地址配置正确3. 在R1的端口上,启用认证功能4. 在R1上配置用于PPP认证的用户名和密码5. 在R2的端口上配置,通过CHAP方式发送的用户名和密码6. 测试R1与R2之间的连通性,以此来证明:它们两者之间认证是否成功- 配置
R1:
undo terminal monitor
system-view
sysname R1
interface Serial0/0/0 ->在华为设备上,每个串行端口的协议,默认为PPP
ip address 192.168.12.1 24
**ppp authentication-mode chap ->在该端口启用CHAP认证功能**
quit
aaa
**local-user huawei password cipher hcie ->创建用户名与密码
local-user huawei service-type ppp  ->指定用户名只能用于PPP认证**
quitR2:
undo terminal monitor
system-view
sysname R2
interface Serial0/0/0
ip address 192.168.100.1 24
**ppp chap user huawei ->返回的PPP的报文中包含用户名huawei
ppp chap password hcie->与接收到的“挑战报文”中的报文ID+随机数,一起进行HASH运算,形成HASH值,然后与本端口配置的用户名huawei,一起组成“响应报文”返回到认证端。**
quit此时,查看一下信息:
@在R1/R2上查看端口的信息,确保LCP Opened ,IPCP Opened
[R1]dis interface Se0/0/0
Serial0/0/0 current state : UP
Line protocol current state : UP
Last line protocol up time : 2022-07-07 10:26:51 UTC-08:00
Description:
Route Port,The Maximum Transmit Unit is 1500, Hold timer is 10(sec)
Internet Address is 192.168.12.1/24
Link layer protocol is PPP
LCP opened, IPCP opened
Last physical up time   : 2022-07-07 10:26:48 UTC-08:00
Last physical down time : 2022-07-07 10:26:45 UTC-08:00
Current system time: 2022-07-07 10:32:25-08:00Interface is V35Last 300 seconds input rate 4 bytes/sec, 0 packets/secLast 300 seconds output rate 4 bytes/sec, 0 packets/secInput: 8180 bytes, 633 PacketsOuput: 8245 bytes, 637 PacketsInput bandwidth utilization  : 0.05%Output bandwidth utilization : 0.05%[R2]dis interface Se0/0/0
Serial0/0/0 current state : UP
Line protocol current state : UP
Last line protocol up time : 2022-07-07 10:26:51 UTC-08:00
Description:
Route Port,The Maximum Transmit Unit is 1500, Hold timer is 10(sec)
Internet Address is 192.168.100.1/24
Link layer protocol is PPP
LCP opened, IPCP opened
Last physical up time   : 2022-07-07 10:26:49 UTC-08:00
Last physical down time : 2022-07-07 10:26:45 UTC-08:00
Current system time: 2022-07-07 10:35:43-08:00Interface is V35Last 300 seconds input rate 4 bytes/sec, 0 packets/secLast 300 seconds output rate 4 bytes/sec, 0 packets/secInput: 8645 bytes, 673 PacketsOuput: 8678 bytes, 674 PacketsInput bandwidth utilization  : 0.05%Output bandwidth utilization : 0.05%@在R1/R2上查看路由表信息,确保有对端接口IP地址的/32位主机路由
[R1]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: PublicDestinations : 5        Routes : 5        Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0192.168.12.0/24  Direct  0    0           D   192.168.12.1    Serial0/0/0192.168.12.1/32  Direct  0    0           D   127.0.0.1       Serial0/0/0192.168.100.1/32  Direct  0    0           D   192.168.100.1   Serial0/0/0[R2]dis ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: PublicDestinations : 5        Routes : 5        Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0192.168.12.1/32  Direct  0    0           D   192.168.12.1    Serial0/0/0192.168.100.0/24  Direct  0    0           D   192.168.100.1   Serial0/0/0192.168.100.1/32  Direct  0    0           D   127.0.0.1       Serial0/0/0@在R1/R2上ping对方的端口IP地址,确保可以互通
[R1]ping 192.168.100.1PING 192.168.100.1: 56  data bytes, press CTRL_C to breakReply from 192.168.100.1: bytes=56 Sequence=1 ttl=255 time=30 msReply from 192.168.100.1: bytes=56 Sequence=2 ttl=255 time=30 msReply from 192.168.100.1: bytes=56 Sequence=3 ttl=255 time=30 msReply from 192.168.100.1: bytes=56 Sequence=4 ttl=255 time=30 msReply from 192.168.100.1: bytes=56 Sequence=5 ttl=255 time=30 ms--- 192.168.100.1 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 30/30/30 ms
- PPP链路捆绑此技术的目的是为了增加设备之间的互连带宽,提高设备之间的链路利用率,实现数据负载均衡,提升数据转发效率,多个ppp链路捆绑之后,形成的虚拟端口叫做mp-group:配置命令如下:
R1:
undo terminal monitor
system-view
sysname R1
interface mp-group 0/0/1
ip address 192.168.12.1 24
quit
interface Serial0/0/0
ppp mp mp-group 0/0/1
quit
interface Serial0/0/1
ppp mp mp-group 0/0/1
quitR2:
undo terminal monitor
system-view
sysname R2
interface mp-group 0/0/1
ip address 192.168.100.1 24
quit
interface Serial0/0/0
ppp mp mp-group 0/0/1
quit
interface Serial0/0/1
ppp mp mp-group 0/0/1
quit
- HDLC链路捆绑HDLC链路捆绑的应用场景与作用,与PPP链路捆绑都是相似的,捆绑之后,形成的虚拟端口,叫做ip-turnk。配置命令如下:
R1:
undo terminal monitor
system-view
sysname R1
interface Serial0/0/0
link-protocol hdlc
Warning: The encapsulation protocol of the link will be changed.
Continue? [Y/N]:y
quit
interface Serial0/0/1
link-protocol hdlc
Warning: The encapsulation protocol of the link will be changed.
Continue? [Y/N]:y
quit
interface Ip-trunk 1
ip address 192.168.12.1 24
trunkport Serial0/0/0
trunkport Serial0/0/1
quitR2:
undo terminal monitor
system-view
sysname R2
interface Serial0/0/0
link-protocol hdlc
Warning: The encapsulation protocol of the link will be changed.
Continue? [Y/N]:y
quit
interface Serial0/0/1
link-protocol hdlc
Warning: The encapsulation protocol of the link will be changed.
Continue? [Y/N]:y
quit
interface Ip-trunk 1
ip address 192.168.12.2 24
trunkport Serial0/0/0
trunkport Serial0/0/1
quit
- 案例:PPPoE配置- 拓扑![](https://secure2.wostatic.cn/static/mbXizGvYSMM2YbFUoHqR3W/image.png)- 需求1. R1作为PPP的客户端,R2作为运营商2. 两者之间实现PAP认证,让R1的虚拟端口成功获取公网IP地址- 配置
R1:
interface Dialer 1
link-protocol ppp
ppp pap local-user huawei password cipher hcie
ip address ppp-negotiate
dialer user huawei
dialer bundle 1
quitinterface Gi0/0/0
pppoe-client dial-bundle-number 1
quitR2:
interface Virtual-Template 1
ppp authentication-mode pap
remote address pool ABC
ip address 192.168.12.2 24
quitaaa
local-user huawei password cipher hcie
local-user service-type ppp
quitip pool ABC
network 192.168.12.0 mask 255.255.255.0
quitinterface Gi0/0/0
pppoe-server bind Virtual-Template 1
quit此时,R1的dialer接口,就可以获取到IP地址了然后配置一条去往互联网的静态路由:
ip route-static 0.0.0.0 0 dialer 1
  • IPV6概述

    随后网络的发展,IPv4地址严重不足,为了扩展IPv4地址空间,我们开发了IPv6。

    但是IPv6所带来的好处,不仅仅是扩大了地址空间,还有许多其它的,现列举如下:

    1. 增大了地址空间,因为IPv6的长度是用128bit表示的。
    2. 报文结构更加简化,设备处理起来,更加的高效。
    3. 能够支持安全功能,在IPv4中无法支持,即:IPv4网络是不安全的,也是不稳定的。
    4. 能够更好的支持QoS,因为在报文结构中,引入了一个字段:flow label。
    5. 对移动的网络支持的更好,因为在IPv6中有任意播,这种类型的地址。
    6. 支持更加便捷的自动配置方案:无状态自动配置,有状态自动配置。
  • IPv6地址格式

    1. IPv6的地址是通过十六进制表示的,叫冒号分16进制,每一段是4个16进制数,一共有8段
    2. IPv6地址仍然分为两个部分:网络位+主机位,但是在IPv6中,称之为 网络前缀+接口ID
    3. 因为IPv6地址过长,所以为了方便使用,IPv6存在一些地址简写的原则:
      • 任何一段中,左边的0,能省略,中间的0,不能省略,右边的0也不能省略。
      • 如果有一段,全是0,可以有一个0表示
      • 如果一个IPv6地址中,存在多个连续的段,都是0,可以用一个双冒号表示 - ::

    注意:双冒号在一个IPv6地址中,最多只能出现1次。

  • IPv6地址类型

    IPv6地址中,仅仅分为单播,组播,任意播。

    • 单播

      1. 未指定地址:IPv6的128bit全是0。
      2. 回环地址:::1/128,这个地址类似于IPv4中的127.0.0.1
      3. 全球单播地址:也就是IPv6的公网IP地址,前面几个固定的bit是001所以,按照这个定义来说,理论上,全世界的IPv6主机地址,一共就要2的125次方个,但是,现在国际机构允许售卖的IPv6地址,掩码必须是/48位的,那就是说,运营商在申请到这些IPv6地址以后,售卖给企业终端用户的时候,肯定是在原有的基础上,进行了子网划分
      4. 唯一本地地址:相当于IPv4的私网IP,固定的网络前缀是FC00::/7
      5. 链路本地地址(link-local address):这种地址,用于在一个网段中,唯一的标识一个端口,并且一个端口的link-local address地址可以自动形成,也可以手动配置。为什么需要怎么一个地址呢?因为对于IPv6端口,一个端口是可以同时配置多个IPv6地址的。同一个IPv6地址,也可以配置在多个端口上的,所以仅仅通过IPv6地址,是无法唯一的表示一个端口的。所以才有了link-local address。给类型地址的固定网络前缀是:FE80::/10

      注意:在不同类型的IPv6地址中,有些地址的形成是需要依靠interface-id(端口标识)来完成的,但是官方规定,只要我们是用IPv6地址的前面3个bit不是000的时候,那么该地址中所使用的interface-id的规定,就必须是长度为64bit的格式,所以说:上面我们所提到的各种IPv6的单播地址,凡是用到了interface-id的,格式都是64bit的。

      interface-id形成的三种方式:手动配置,系统软件生成,基于IEEE EUI-64的标准自动生成。第三种方法比较常用:该类型的方法,是基于端口的MAC地址类形成的,过程如下:

      1. 在原先MAC地址的中间,插入一个固定的2个字节:FFFE
      2. 将原先MAC地址的第7bit的位置上的0换成1,此时,就形成了一个唯一的64位的interface-id了。

      最后,我们需要知道的是interface-id仅仅相当于IPv6地址中的主机位,还得需要一各IPv6的网络前缀。通常,都是由IPv6网段中的网关设备,主动发送自己端口的IPv6网段,每个终端收到这个网段之后,并结合自己网卡上的interface-id,从而就形成了一个可定没有冲突的IPv6地址。

    • 组播

      只要IPv6地址的前面8bit全是1,转换成十六进制以后,就是FF

      组播地址分为很多类型,比如公有组播地址,私有组播地址,链路组播地址,站点内组播地址

      但是有一个非常特殊的组播地址叫— 被请求节点的组播地址

      任何一个IPv6的地址配置完成以后,都会形成一个“被请求节点的组播地址”

      形成过程是:一个固定104bit的前缀,在加上一个IPv6地址的后面的24bit

      固定的104bit的前缀是:FF02::1:FF00:0/104

      通常情况下,每个网段中的每个IPv6地址,对应的组播地址所表示的“组”,其中仅仅表示一个IPv6地址

    • 任意播

      本质上,就是一个IPv6的单播地址,只不过是将一个IPv6地址,同时分配给了多个相同的设备

  • IPv6报文类型

    图1 IPv6基本报头格式

    IPv6报文分为两个部分:固定头部+扩展头部【固定头部,大小为40个字节】

    虽然IPv6的头部变长了,但是结构是非常简单的。下面对常见的字段进行解析:

    1. version:表示当前IP协议的版本,即IPv6
    2. traffic-class:流量类别,表示的是数据包的优先级,类似于IPv4头部中的Tos(type of service)
    3. flow label:流标签,是IPv6相比较IPv4而言,新增加的字段。用于快速的区分出不同的数据流。在IPv4协议中,想要区分不同的数据流,我们需要确定每个数据流的5个信息,俗称5元祖(源IP,目标IP,源端口,目标端口,传输协议-tcp/udp)在IPv6中,引入了这个“流标签”概念以后,在区分IPv6的不同数据流的时候,就仅仅依靠:源IPv6地址+流标签就可以了
    4. payload length:负载长度,即表示IPv6后面的数据长度
    5. nextheader:下一个头部,指的是IPv6后面跟的是什么类型的协议,类似于IPv4中的protocol ID-协议号
    6. hop limit:跳数限制,主要用于防止IPv6数据包环路,类似于IPv4头部中的TTL(time to live:存活时间),即数据包在传输过程中,没经过一个路由器(网关),hop limit就会减少1,当减少到0的时候,就直接被丢弃了。
    7. source address:源IPv6地址
    8. destination address:目标IPv6地址
    9. IPv6固定头部后面,还有很多“扩展头部”,实现的功能是完全不同的。目前,RFC中定义了6个IPv6的扩展头部:逐跳选项头部,目的选项头部,路由头部,分段头部,认证头部,封装安全净载报头
  • IPv6协议之ICMPv6

    在IPv4中,ICMPv4更多的是进行线路的测试,路径跟踪以及其它报错信息的收集与反馈。

    但是在IPv6中,ICMPv6的功能就非常多了,比如:ping ,tracert,地址冲突检测,IPv6地址自动配置,路径MTU发现机制,邻居发现机制,重定向功能。

    ICMPv6的数据,在报文封装中,是位于IPv6头部后面,nextheader的取值为58.

    图1 ICMPv6报文格式

  • ICMPv6之NDP

    NDP叫做邻居发现协议,类似于IPv4中的ARP协议

    ARP的过程是基于ARP请求与ARP回应。前者是广播,后者是单播,同时还会在终端设备上形成一个ARP表

    NDP也是类似的,

    所以NDP在干活的时候,以依靠两个报文:NDP请求(NDP Solicitation)和NDP通告(NDP Advertisement),前者是组播,后者是单播,同时也会在终端设备上形成一个NDP邻居表。

    工作过程如下:

    • 案例:理解NDP的工作过程

      既然NDP能够实现类似于IPv4的ARP功能,**那么NDP必然能够支持类似于IPv4中免费ARP的作用,**这个主要是来进行IP地址的冲突检测的,在IPv6中,的确是使用了NDP的DAD(地址重复检测机制):每个IPv6端口在正式的使用一个IPv6地址之前,都会发送一个目标地址是自己的IPv6所对应的“被请求节点的组播地址”的NS报文,不应该收到NA的报文。如果真的收到了,就说明存在IPv6地址的冲突。如果没有NA报文,就说明不存在IPv6地址冲突。

      另外需要知道的是:当IPv6地址还没有被检测的时候,此时,这个地址就被称作为IPv6的实验地址(Tentative address

  • NDP之路由发现功能

    支持IPv6路由功能的路由器,默认情况下,也不会将自己端口的IPv6地址中的网段/网络前缀发送出去的。

    除非我们在IPv6设备的端口上,开启RA功能,允许给端口发送RA报文,其中包含的是该IPv6地址的网段。该报文,就会在该端口所连接的网段中,进行转发,那么该网段的其它终端主机,就会收到这个报文。

    如果每个终端设备,都开启了IPv6功能,那么就会使用自己网卡的MAC地址,按照EUI-64的规则,自动形成一个interface-id,然后等到获得了RA报文,就会使用RA报文的IPv6前缀,加上自己的interface-id,自动形成一个IPv6地址。这种自动形成IPv6地址的方法,在IPv6中,称之为:无状态的IPv6自动配置。

    所以,如果想要抓取上述的RA报文,就得在路由器的相应端口上开启RA的功能,命令如下:

R1:
interface Gi0/0/0
undo ipv6 nd ra halt ->关闭RA的禁止发送功能,此时该端口就可以发送RA报文了
- 案例:理解NDP的路由发现(无状态的IPv6自动配置)- 拓扑![](https://secure2.wostatic.cn/static/7M4gj3jSb7BWsnrH5Ympj9/image.png)- 需求1. 如图配置R1和R2端口的IPv6地址2. 开启R1的RA的功能3. 抓取R1的Gi0/0/0- 配置
R1:
ipv6
interface Gi0/0/0
ipv6 enable
ipv6 address 2001:12::1 64
undo ipv6 nd ra half ->关闭RA的禁止发送功能,此时该端口就可以发送RA报文了R2:
ipv6
interface Gi0/0/0
ipv6 enable
ipv6 address auto global->可以接收RA报文,也可以发送RS[R2]dis ipv6 interface brief
*down: administratively down
(l): loopback
(s): spoofing
Interface                    Physical              Protocol
GigabitEthernet0/0/0         up                    up
[IPv6 Address] 2001:12::2E0:FCFF:FE16:64BA[R2]ping ipv6 2001:12::1PING 2001:12::1 : 56  data bytes, press CTRL_C to breakReply from 2001:12::1 bytes=56 Sequence=1 hop limit=64  time = 90 msReply from 2001:12::1 bytes=56 Sequence=2 hop limit=64  time = 40 msReply from 2001:12::1 bytes=56 Sequence=3 hop limit=64  time = 20 msReply from 2001:12::1 bytes=56 Sequence=4 hop limit=64  time = 20 msReply from 2001:12::1 bytes=56 Sequence=5 hop limit=64  time = 30 ms--- 2001:12::1 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 20/40/90 ms

华为网络专家的求学之路的第四步相关推荐

  1. 提高网络营销的转化只需掌握这四步

    如何提高网络营销的转化,很多企业在开展网络营销的实战中,很多营销负责人都在想办法提升网站流量,吸引用户眼球,做网站优化营销不单是要吸引用户眼球同时也要让用户对你网站产生一种黏性.今天给大家分享的主题是 ...

  2. 对话华为云专家,摆脱无意义“内卷”

    本期推荐:[云享人物·大咖面对面]华为云首席产品官方国伟独家专访:当下云发展有待突破的并不是技术问题:现在为什么是#华为云# 的最佳时机:以不变应万变,什么是云产品规划的三个关键出发点:生态对于云的意 ...

  3. 入选 Gartner 魔力象限,剖析华为云 GaussDB 数据库演进之路

    日前,国际知名调研机构Gartner发布了2020年全球云数据库魔力象限报告(<Magic Quadrant for Cloud Database Management Systems>) ...

  4. 【华为云专家原创】 服务注册与发现如何满足服务治理?

    摘要:本文主要介绍了服务注册与发现的原理,以及常用的几种服务注册与发现组件介绍对比. 在单体应用向微服务架构演进的过程中,原本的巨石型应用会按照业务需求被拆分成多个微服务,每个服务提供特定的功能,并可 ...

  5. 局域网通讯工具_五大核心开启工业通讯创新之门——西门子工业网络专家计划打造最强行业生态...

        过去的工厂由工具组成,     现在的工厂由设备组成.  过去的工具是割裂的,现在的设备是互联的.收集真实对象信息.传输数据是数字化解决方案的关键要素,工业通讯将成为数字化转型的决定因素. - ...

  6. 【社区图书馆】《网络工程师的Python之路:网络运维自动化实战(第2版)》

    文章目录 图书前言 图书简介 图书作者.简介 图书好评 图书目录 总结:本人选择此图书的意义 图书前言 光阴似箭,岁月如梭.转眼之间,距离本书最早的电子书出版已经过去了三年之久.承蒙广大读者的厚爱,电 ...

  7. 华为网络实验--动态路由器+RIP路由协议配置及验证

    华为网络实验–动态路由器+RIP路由协议配置及验证 文章目录 华为网络实验--动态路由器+RIP路由协议配置及验证 前言 一.动态路由 1.1动态路由协议基础 1.1.1动态路由 1.1.2动态路由特 ...

  8. 基于QT的华为网络摄像头二次开发

    资源下载链接 第一次使用华为的网络摄像头并进行二次开发,网上关于QT对华为网络摄像头的二次开发的文章很少,基于项目的需求做了一些工作,特此记录. 目标: 1.实时预览 2.手动控制录制视频 3.监听告 ...

  9. 华为HCIE专家认证相关简介

    一.华为认证体系 > 1.华为认证体系概述         华为认证是华为技术有限公司(简称"华为 HUAWEI")基于"平台+生态"战略,围绕" ...

  10. 从高考落榜生到网络专家-转自齐鲁社区之齐鲁杂谈(转)

    成功的背后,有着许多不为人知的故事,而正是这些夹杂着泪水和汗水的过去,才成就了一个个走 向成功的普通人--凌晨两点半,早已习惯了一个人坐在电脑前的我,望着屏幕,任思绪在暗夜的包容 下静静流淌,时光仿佛 ...

最新文章

  1. 推荐GitHub上几个比较热门的开源项目,记得收藏下!!!
  2. CCNA--点对点协议(PPP)
  3. Spring 中的代理选择原则
  4. scrapy爬虫框架windows下的安装问题
  5. Spring系列(二):Bean注解用法介绍
  6. HH SaaS电商系统服务商品在移动端下单结算的交互设计
  7. 外设驱动库开发笔记18:MS5837压力变送器驱动
  8. 红橙Darren视频笔记 Activity启动流程(API28)
  9. Apache模块管理
  10. MYSQL类型与JAVA类型对应表
  11. java 四大元注解_java中元注解有四个
  12. 数字图像处理学习 matable
  13. DWM1000 Blink结构 -- 帧过滤第一节
  14. Linux学习总结(62)——什么是堡垒机?为什么需要堡垒机?
  15. 遗传+粒子群 求解多配送中心车辆调度问题(python)
  16. 文献检索与SCI、EI、ISTP
  17. 敏捷管理第三章《敏捷理解》
  18. 1.Windows server 2022 AD域的安装与如何加入域中
  19. 以智能卡平台为硬件的嵌入式加密IC的优势
  20. 蓝桥杯 算法训练 Tennis Rackets (50%通过)

热门文章

  1. pro android python with sl4a,Pro Android Python with SL4A
  2. 那些年震撼我们心灵的音乐
  3. 丧钟为谁而鸣:AI步步逼近,华尔街23万人将失业
  4. 使用Kettle从国家统计局下载行政区划代码数据
  5. JMeter的取样器
  6. eRPC:通过实现双向请求的串行通讯传输(dual serial transport)支持client/server混合运行
  7. 拉宾-卡普算法详解以及示例[rabin-karp]
  8. python裂缝检测_通过opencv-python检测裂缝
  9. Origin | 图形动画制作
  10. 编程c语言黑与白,C语言黑与白问题代码及解析