三层交换机【Vlanif详解】开启OSPF与路由器互通【eNSP实现】

交换机属于二层设备,只能通过MAC地址表进行转发且转发范围受VLAN限制

若我们想跨VLAN进行通信,通常方法有两种

  1. 利用路由器实现单臂路由
  2. 通过三层交换机的虚拟接口Vlanif进行转发,Vlanif接口编号必须与VLAN编号一一对应

实验目的

  • 理解Vlanif接口的作用
  • 了解数据的转发过程
  • 了解OSPF在三层交换机上的特殊形式

实验拓扑

实验步骤

  1. 手动为各个PC分配好图示IP地址,掩码与网关,在S1上创建VLAN 10,在S2上创建VLAN 20,并将两个接口分别配置为Access类型与Trunk类型

    S1:
    <Huawei>sys
    [Huawei]undo info-center en
    [Huawei]sysname S1
    [S1]vlan batch 10
    [S1]int e0/0/1
    [S1-Ethernet0/0/1]port link-type access 
    [S1-Ethernet0/0/1]port default vlan 10
    [S1-Ethernet0/0/1]int g0/0/1	
    [S1-GigabitEthernet0/0/1]port link-type trunk 
    [S1-GigabitEthernet0/0/1]port trunk allow-pass vlan all
        
    S2:
    <Huawei>sys	
    [Huawei]undo info-center en
    [Huawei]sysname S2
    [S2]vlan batch 20
    [S2]int e0/0/1
    [S2-Ethernet0/0/1]port link-type access 
    [S2-Ethernet0/0/1]port default vlan 20
    [S2-Ethernet0/0/1]int g0/0/2	
    [S2-GigabitEthernet0/0/2]port link-type trunk 
    [S2-GigabitEthernet0/0/2]port trunk allow-pass vlan all
    
  2. R1e0/0/1设置为PC3的网关,将g0/0/3设置为10.255.255.254/8

    R1:
    <Huawei>sys
    [Huawei]undo info-center en
    [Huawei]sysname R1
    [R1]int e0/0/1
    [R1-Ethernet0/0/1]ip address 192.168.3.254 24
    [R1-Ethernet0/0/1]int g0/0/3
    [R1-GigabitEthernet0/0/3]ip address 10.255.255.254 8
    
  3. 此时我们应当想一想S3该如何配置才能保证跨路由通信?我们不妨假设此时PC1 ping PC2,看看需要哪些操作

    1. 首先PC1PC2IP地址与自身掩码相与,发现PC2与自己不处于同一个网段,所以直接发送ARP请求报文【经由S1e0/0/1接口,因此会携带VLAN 10标签】希望能够得到PC1网关的MAC地址,而二层交换机作为数据链路层设备是没有IP地址的,此时便需要用到三层交换机的Vlanif接口了

    2. 我们在S3上配置Vlanif 10逻辑接口,接口的IP地址设置为PC1的网关。此时若再有携带VLAN 10标签的ARP请求信息时,交换机便会将ARP的目的地址与Vlanif 10接口的IP地址进行比较,若相同,则将交换机的MAC地址返回给PC1,意思为:你要找的网关地址在这里!

      由Vlanif接口接收数据时会剥离Vlanif接口编号对应的Vlan标签;由Vlanif接口发送出数据时会打上Vlanif接口编号对应的VLAN标签,Vlanif接口地址通常为网关地址

    3. PC1得知了目的MAC地址后便会发送原本想发送的ICMP报文,Vlanif 10接口进行接收,接收后会剥离原本数据携带的VLAN 10标签。接着交换机查看自己的路由表,看看要把这从网关接收到的数据发往何处

    4. 此时我们还未帮助PC2网段设立Vlanif 20逻辑接口,所以此时路由表上仅仅只有设置过Vlanif 10逻辑接口的PC1网段。因此我们设置Vlanif 20接口,与Vlanif 10接口同理

      S3:
      [S3]vlan batch 10 20		//创建vlanif前要确保交换机存在对应的VLAN
      [S3]int vlanif 10
      [S3-Vlanif10]ip address 192.168.1.254 24
      [S3-Vlanif10]int vlanif 20
      [S3-Vlanif20]ip address 192.168.2.254 24
      

      我们可用display ip route-table查询此时S3的路由表情况,发现不管是去往PC1网段还是去PC2网段都已经有了直连通路,下一跳地址为Vlanif逻辑接口

    5. 此时PC1 ping PC2能通么?答案当然是不行的,因为我们还未配置S3g0/0/1g0/0/2端口类型,无法处理携带VLAN标签的信息,那么应该将这两个端口设置Access还是Trunk呢?

      答案是Trunk。假设S3g0/0/1Access接口,默认VLAN10,则当信息从S3g0/0/1接口发出来时便会被剥离VLAN 10标签,从而导致无法通过S1e0/0/1接口,自然也就无法到达PC1

      S3:
      [S3]int g0/0/1	
      [S3-GigabitEthernet0/0/1]port link-type trunk 
      [S3-GigabitEthernet0/0/1]port trunk allow-pass vlan all
      [S3-GigabitEthernet0/0/1]int g0/0/2
      [S3-GigabitEthernet0/0/2]port link-type trunk
      [S3-GigabitEthernet0/0/2]port trunk allow-pass vlan all
      

      此时PC1PC2可相互连通

  4. 我们如何令PC3PC1,PC2相互连通呢?我们不妨假设此时有PC3 ping PC1

    1. PC3通过掩码计算得出PC1与自身不处于同一网段,因此询问网关地址,而R1e0/0/1接口正好为PC3的网关,因此数据顺利到达R1

    2. R1接着查询路由表,试图寻找关于PC1的路由,由于我们并未静态配置任何路由,也没有动态学习路由,因此此时路由表中仅有直连链路。我们配置OSPF,使S3R1能够相互学习路由信息,同时我们还需要打通S3g0/0/3R1g0/0/3,以便能够顺利交流链路信息,打通的方法依旧是Vlanif接口

      S3:
      [S3]vlan batch 100
      [S3-Vlanif20]int vlanif 100
      [S3-Vlanif100]ip address 10.0.0.1 8
      [S3]ospf
      [S3-ospf-1]area 0
      [S3-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255
      [S3-ospf-1-area-0.0.0.0]network 192.168.2.0 0.0.0.255
      [S3-ospf-1-area-0.0.0.0]network 10.0.0.0 0.255.255.255
          
      R1:
      [R1]ospf
      [R1-ospf-1]area 0
      [R1-ospf-1-area-0.0.0.0]network 192.168.3.0 0.0.0.255
      [R1-ospf-1-area-0.0.0.0]network 10.0.0.0 0.255.255.255
      

      此时仍然还不能达到我们的要求,因为Vlanif 100只有接收到带有VLAN 100标签的数据才能发挥作用,进入三层转发,而经由路由器转发的数据是不携带VLAN标签的,解决这个问题的办法就是Access接口

      S3:
      [S3]int g0/0/3
      [S3-GigabitEthernet0/0/3]port link-type access 
      [S3-GigabitEthernet0/0/3]port default vlan 100
      

      此时,经由g0/0/3发送至路由器的信息会被剥离VLAN 100标签,而从路由器发送过来的数据又会被打上VLAN 100的标签,完美满足我们的需求

  5. 至此,PC3PC2,PC1都可互通

  • 31
    点赞
  • 259
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值