Ubuntu 22.04.5 配置vlan子接口和网桥

使用bond为物理接口,bond配置可以参考:https://blog.csdn.net/qq_50247813/article/details/143630081

实验一、配置vlan子接口

  1. 创建bond0,模式为802.3ad;从网卡,ens37,ens38,添加子接口 bond0.10,配置vlanid 10

    复制代码
    root@ubuntu22:/etc/netplan# cat bond0.yaml
    network:
        version: 2
        renderer: networkd
        ethernets:
          ens37:
            addresses: []
            dhcp4: no
            optional: true
          ens38:
            addresses: []
            dhcp4: no
            optional: true
        bonds:
          bond0:
            interfaces: [ens37,ens38]
            parameters:
              mode: 802.3ad
              lacp-rate: fast
              mii-monitor-interval: 100
              transmit-hash-policy: layer3+4
        vlans:
          bond0.10:
            id: 10
            link: bond0
            addresses: [192.168.1.100/24]
            routes:
              - to: 0.0.0.0
                via: 192.168.1.1
            nameservers:
              addresses: [114.114.114.114]
  2. 查看子接口和vlan信息

    复制代码
    root@ubuntu22:/etc/netplan# netplan apply
    root@ubuntu22:/etc/systemd# ip addr show bond0.10
    6: bond0.10@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
        link/ether 1a:40:de:5e:c3:0c brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.100/24 brd 192.168.1.255 scope global bond0.10
           valid_lft forever preferred_lft forever
        inet6 fe80::1840:deff:fe5e:c30c/64 scope link
           valid_lft forever preferred_lft forever
    root@ubuntu22:/etc/systemd# cat /proc/net/vlan/
    bond0.10  config
    root@ubuntu22:/etc/systemd# cat /proc/net/vlan/config
    VLAN Dev name    | VLAN ID
    Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD
    bond0.10       | 10  | bond0

实验二、创建网桥

  1. 正常绑定接口

    复制代码
    root@ubuntu22:/etc/netplan# cat br0.yaml
    network:
        version: 2
        renderer: networkd
        ethernets:
          ens37:
            addresses: []
            dhcp4: no
            optional: true
          ens38:
            addresses: []
            dhcp4: no
            optional: true
        bonds:
          bond0:
            interfaces: [ens37,ens38]
            parameters:
              mode: 802.3ad
              lacp-rate: fast
              mii-monitor-interval: 100
              transmit-hash-policy: layer3+4
        bridges:
          br0:
            interfaces: [bond0]  # 将物理接口绑定到网桥
            dhcp4: yes		# 如果希望通过DHCP获取IP地址
            # 如果使用静态IP地址,可以配置如下:
            # addresses: [192.168.1.100/24]
            # gateway4: 192.168.1.1
            # nameservers:
            # addresses: [8.8.8.8, 1.1.1.1]

    查看网桥接口,已经网桥信息

    复制代码
    root@ubuntu22:/etc/netplan# ifconfig br0
    br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 192.168.119.130  netmask 255.255.255.0  broadcast 192.168.119.255
            inet6 fe80::7c7a:a7ff:fecb:de52  prefixlen 64  scopeid 0x20<link>
            ether 7e:7a:a7:cb:de:52  txqueuelen 1000  (Ethernet)
            RX packets 548  bytes 72415 (72.4 KB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 493  bytes 60078 (60.0 KB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    root@ubuntu22:/etc/netplan# brctl show
    bridge name     bridge id               STP enabled     interfaces
    br0             8000.7e7aa7cbde52       no              bond0
  2. 绑定子接口

    复制代码
    root@ubuntu22:/etc/netplan# cat br0.yaml
    network:
        version: 2
        renderer: networkd
        ethernets:
          ens37:
            addresses: []
            dhcp4: no
            optional: true
          ens38:
            addresses: []
            dhcp4: no
            optional: true
        bonds:
          bond0:
            interfaces: [ens37,ens38]
            parameters:
              mode: 802.3ad
              lacp-rate: fast
              mii-monitor-interval: 100
              transmit-hash-policy: layer3+4
        vlans:
          bond0.10:
            id: 10
            link: bond0
            addresses: []
        bridges:
          br0:
            interfaces: [bond0.10]
            dhcp4: no
            addresses: [192.168.1.100/24]
            routes:
              - to: 0.0.0.0
                via: 192.168.1.1
            nameservers:
              addresses: [8.8.8.8]

    这里和配置vlan 子接口配置很像,但是配置网桥,子接口地址就无需要配置,地址配置在网桥上,子接口作为网桥的一个端口。

    查看接口、vlan、网桥信息

    复制代码
    root@ubuntu22:/etc/netplan# ifconfig br0
    br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 192.168.1.100  netmask 255.255.255.0  broadcast 192.168.1.255
            inet6 fe80::7c7a:a7ff:fecb:de52  prefixlen 64  scopeid 0x20<link>
            ether 7e:7a:a7:cb:de:52  txqueuelen 1000  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 28  bytes 2400 (2.4 KB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    root@ubuntu22:/etc/netplan# cat /proc/net/vlan/config
    VLAN Dev name    | VLAN ID
    Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD
    bond0.10       | 10  | bond0
    root@ubuntu22:/etc/netplan# brctl show
    bridge name     bridge id               STP enabled     interfaces
    br0             8000.7e7aa7cbde52       no              bond0.10
相关推荐
Sinclair3 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器
Rockbean4 天前
用40行代码搭建自己的无服务器OCR
服务器·python·deepseek
茶杯梦轩4 天前
CompletableFuture 在 项目实战 中 创建异步任务 的核心优势及使用场景
服务器·后端·面试
海天鹰4 天前
【免费】PHP主机=域名+解析+主机
服务器
DianSan_ERP4 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅4 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
不是二师兄的八戒4 天前
Linux服务器挂载OSS存储的完整实践指南
linux·运维·服务器
欧云服务器4 天前
怎么让脚本命令可以同时在centos、debian、ubuntu执行?
ubuntu·centos·debian
芝士雪豹只抽瑞克五4 天前
Nginx 高性能Web服务器笔记
服务器·nginx
智渊AI4 天前
Ubuntu 20.04/22.04 下通过 NVM 安装 Node.js 22(LTS 稳定版)
ubuntu·node.js·vim