V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
phpfpm
V2EX  ›  问与答

三层交换机如何实现 1v1 的网桥?

  •  
  •   phpfpm · 2023-02-11 00:23:15 +08:00 · 1073 次点击
    这是一个创建于 653 天前的主题,其中的信息可能已经有所发展或是发生改变。

    之前错误的认知

    把两个二层接口单独划分到一个 vlan 上罚站,就可以相当于数据这边进那边出,那边进这边出

    为什么错了?

    这俩网口确实通,但是数据不知道要到另外一个网口。所以不行。

    为什么会有这个需求?

    网线都到这了,一侧来一个 Rj45 ,另外一侧也来一个 rj45 ,想对接上

    直接用网线对接器不可以吗?

    可以是可以,但是问题是

    1. 网线对接器可能会损失速度,良莠不齐
    2. 拓扑不够灵活,想改变拓扑的时候只能拔网线

    如何配置三层交换机实现两个接口的网桥呢?

    目前手头有一台 H3C 的 5600 系列三层交换机,反正咋折腾都行,能接上就行

    如果不行。。

    三层交换机为啥不做这个功能呢

    7 条回复    2023-02-18 19:12:00 +08:00
    sendmailtest123
        1
    sendmailtest123  
       2023-02-11 11:06:35 +08:00
    “数据不知道要到另外一个网口”?交换机正常学习到客户端 MAC 地址后就可以查表把报文往对应端口送啊,除非(a)两侧设备交互的不是以太报文(b)报文已经带了 vlan 。如果是前者用直通头是唯一方案,后者要不让 5600 也参与这部分 vlan 的转发,要不配置 q-in-q 。
    sanshao124
        2
    sanshao124  
       2023-02-11 12:49:20 +08:00
    不是很明白楼主的意思,还是需要根据拓扑结构来判断,主交换机针对不同网络的设备的接入端口配置 vlan ,另一端交换机配置相同的 vlan ,如果主交换机的这个端口需要通过不同 vlan 的数据,那就要配置 trunk ,不知道能不能帮到楼主
    phpfpm
        3
    phpfpm  
    OP
       2023-02-11 17:04:12 +08:00
    @sendmailtest123
    @sanshao124 我说一个具体遇到的问题。
    我入了一个 PA 流控,需要串入网桥。

    1~9 口都是二层网口
    正常上级路由器 LAN 口 连接到 交换机的 1 口,1 口配置 vlanid=1 ,为 access
    其他设备分别接入 2~9 口,vlanid=1 ,都为 access

    交换机的 10 口接 PA 的 ETH0 ,为外网(接路由器方向)
    交换机的 11 口接 PA 的 ETH1 ,为内网(接交换机方向)

    需求:不改 2~9 口的设置和 vlan ,不动 1~11 口的接线,让数据从路由器 lan 出,经 PA ,回到交换机,给 2~9 口的设备提供网络?

    我猜一个可行的方案是,需要对接的网口改成三成接口,互设置对方是网关?
    deorth
        4
    deorth  
       2023-02-11 17:38:51 +08:00 via Android
    数据:我 tm 怎么知道要怎么走,要不然你自己来走一下
    phpfpm
        5
    phpfpm  
    OP
       2023-02-11 21:14:39 +08:00
    @deorth 哈哈哈是我深入学习了交换机的原理之后,发现数据确实不知道怎么走
    julyclyde
        6
    julyclyde  
       2023-02-13 10:07:31 +08:00
    交换机的二层 ACL 有个问题是:它声明的是“可以”这么走,而不是“必须”这么走。和路由不一样
    sendmailtest123
        7
    sendmailtest123  
       2023-02-18 19:12:00 +08:00   ❤️ 1
    @phpfpm 针对#3 中描述的拓扑,假设 PA 的角色是透明网桥( ETH0-1 桥接且不会过滤广播报文,即不是网关或路由模式)可以用纯二层组网实现你想要的效果,需要在 5600 上改动的配置也极少。


    创建一个新 id 为非 1 的 vlan ,记为 x
    g/1 配置 pvid = x
    g/10 配置相同 pvid = x
    若交换机和 PA 间启用了生成树协议,需要切换成能感知 vlan 的模式( pvst )
    其余业务数据保持不变


    以 g/2 下挂客户机 aaaa-bbbb-cccc 、g/1 下挂上级路由 dddd-eeee-ffff 为例,转发表学习到位以后双向网络就能通,而且报文走向应该符合楼主的要求,具体为
    a) 客户机外发报文目的 MAC 为 dddd-eeee-ffff -> 交换机 g/2 查 vlan 1 表确定出接口 g/11 -> PA ETH1 查表确定出接口 ETH0 -> 交换机 g/10 查 vlan x 表确定出接口 g/1 -> 上级路由
    b) 路由器回向报文目的 MAC 为 aaaa-bbbb-cccc -> 交换机 g/1 查 vlan x 表确定出接口 g/10 -> PA ETH0 查表确定出接口 ETH1 -> 交换机 g/11 查 vlan 1 表确定出接口 g/2 -> 客户机


    底层转发表学习流程大致是这样的:

    客户机发布 ARP 报文
    客户机 -> g/2(5600 vlan 1 转发表学习 aaaa-bbbb-cccc 出接口 g/2) -> 泛洪至 g/11 进 PA ETH1(PA 转发表学习 aaaa-bbbb-cccc 出接口 ETH1) -> 泛洪至 PA ETH0 进 g/10(5600 vlan x 转发表学习 aaaa-bbbb-cccc 出接口 g/10) -> 泛洪至 g/1 进上级路由 LAN(上级路由器转发表学习 aaaa-bbbb-cccc 出接口 LAN)

    上级路由器发布 ARP 报文
    路由器 -> g/1(5600 vlan x 转发表学习 dddd-eeee-ffff 出接口 g/1) -> 泛洪至 g/10 进 PA ETH0(PA 转发表学习 dddd-eeee-ffff 出接口 ETH0) -> 泛洪至 PA ETH1 进 g/11(5600 vlan 1 转发表学习 dddd-eeee-ffff 出接口 g/11) -> 泛洪至 g/2 进客户机(客户机转发表学习 dddd-eeee-ffff 出接口交换机)


    楼主若有兴趣可以用模拟器建立拓扑实验一下,用一台空配交换机平替 PA 就行。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5702 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 08:52 · PVG 16:52 · LAX 00:52 · JFK 03:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.