AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1276987
Accepted
PrestonDocks
PrestonDocks
Asked: 2020-09-23 11:13:34 +0800 CST2020-09-23 11:13:34 +0800 CST 2020-09-23 11:13:34 +0800 CST

如何将 Ubuntu 18.04 (netplan) 与 VLAN 一起使用

  • 772

我有一个 Netgear 交换机和一个 Unifi Seurity 网关,它们一起允许我将我的网络分成不同的 vlan。例如,我在 VLAN 10 上有服务器。

使用其他硬件,即我的 NAS,我只需告诉网络配置使用 VLAN 10,只要 netgear 交换机中的端口在 Vlan 10 上标记为标记,一切正常。

我真的在 Ubuntu 18.04 和 Vlans 上苦苦挣扎。除了将我的 Ubuntu 18 服务器放在 vlan10 上之外,我不想做任何花哨的事情

顺便说一句,我正在使用 Raspberry Pi 4 Model B

这是我当前在 /etc/netplan/50-cloud-init-.yaml 中的配置

network:
  version: 2
  renderer: networked
  ethernets:
    eth0:
      addresses:
        - 192.168.10.20/24
      gateway4: 192.168.10.1
      nameservers:
        addresses: [192.168.10.3, 8.8.8.8]
  vlans:
    vlan10:
      id: 10
      link: eth0
      addresses: [192.168.10.21/24]

使用上述配置,netplan apply 不会给我任何错误,并且当我运行 ip addr 时,一切都显示为正确。

然而问题是我可以从 Ubuntu 机器访问 vlan 10 之外的任何设备。但是,我可以通过 ssh 连接到 Vlan 10 上的 NAS,然后从那里通过 SSH 连接到 Ubuntu 服务器。

这几乎让我认为问题出在我的 netgear 交换机配置中,但是 ubuntu 服务器插入的端口配置与 NAS 相同,正如我所说的那样工作得很好。

networking 18.04 netplan vlan
  • 3 3 个回答
  • 8487 Views

3 个回答

  • Voted
  1. PrestonDocks
    2020-09-23T12:06:57+08:002020-09-23T12:06:57+08:00

    由于遵循其他教程,我在问题中包含的示例代码变得有些混乱。

    根据我提出的问题,@Frobozz 提供的答案是准确的,但最终我需要的实际代码就是这个。正是因为@Frobozz 的响应,我才开始了解我需要用谷歌搜索什么。

    network:
      version: 2
      renderer: networkd
      ethernets:
        eth0:
          dhcp4: no
          dhcp6: no
      bridges:
        br10:
          dhcp4: no
          dhcp6: no
          interfaces: [ vlan10 ]
          addresses: [ 192.168.10.20/24 ]
          gateway4: 192.168.10.1
          nameservers:
            addresses:
              - "192.168.10.3"
              - "8.8.8.8"
      vlans:
        vlan10:
          id: 10
          link: eth0
          dhcp4: no
          dhcp6: no
    
    • 1
  2. slangasek
    2020-09-29T14:05:27+08:002020-09-29T14:05:27+08:00

    有两种使用 VLAN 的方法,或者在交换机上使用标记端口,或者使用未标记端口。在交换机上使用未标记端口更为常见,这样主机根本不必配置为了解该 VLAN,而只需看到由交换机分段到特定 VLAN 的普通以太网数据包。

    根据您的配置,很明显您使用的是标记端口,这要求主机支持 vlan。

    原始配置的问题在于,当需要在 VLAN 接口上时,您在以太网接口上配置了默认路由(网关)。以下配置应该足够了:

    network:
      version: 2
      renderer: networkd
      ethernets:
        eth0: {}
      vlans:
        vlan10:
          id: 10
          link: eth0
          addresses: [192.168.10.20/24]
          gateway4: 192.168.10.1
          nameservers:
            addresses: [192.168.10.3, 8.8.8.8]
    
    • 1
  3. Best Answer
    Frobozz
    2020-09-23T11:27:23+08:002020-09-23T11:27:23+08:00

    Netplan 需要一些时间来适应。这里缺少的部分是桥接:这是一个示例:

    network:
        version: 2
        renderer: networked
        ethernets:
            eth0:
                optional: true
        bridges:
            br0:
                interfaces: [eth0]
                addresses:
                - 192.168.10.20/24
                gateway4: 192.168.10.1
                nameservers:
                    addresses: [192.168.10.3, 8.8.8.8]
            br10:
                interfaces: [vlan10]
                addresses: [192.168.10.21/24]
            br25:
                interfaces: [vlan25]
        vlans:
            vlan10:
                id: 10
                link: eth0
            vlan25:
                id: 25
                link: eth0
    

    确保安装了 bridge-utils:

    apt install bridge-utils

    • 0

相关问题

  • 如何设置 VLAN 转发?

  • 如何将主机 Ubuntu 上的 VPN (tun0) 网络适配器映射到 VirtualBox 来宾 Windows?

  • 如何限制下载/上传带宽?

  • 如何通过 Windows 网络共享文件?

  • 面板小程序以文本形式显示当前网络流量?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve