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 / 问题 / 1465603
Accepted
stewie
stewie
Asked: 2023-04-28 02:33:01 +0800 CST2023-04-28 02:33:01 +0800 CST 2023-04-28 02:33:01 +0800 CST

为什么私网不能通过vlan上网?

  • 772

正如标题所示,我在设置网络时遇到问题,以便服务器可以访问互联网。在我布置基础设施时请耐心等待。

所有 3 台服务器均由Hetzner托管。网关和服务器 1 是云服务器,而服务器 2 是通过 vSwitch 连接的专用服务器。以下是有关此设置的一些文档:Connect Dedicated Servers (vSwitch)

服务器 1 和服务器 2 不应有公共 IP 地址,所有流量都经过网关。

所有端口 53 (DNS) 请求都路由到网关。

我有一个从我的电脑到专用网络的有效 VPN 连接。

Network         10.1.0.0/16

Static Route    0.0.0.0/0 -> 10.1.0.2

Subnet          10.1.0.0/24
                        Gateway 10.1.0.2 (pfSense - OpenVpn, DnsResolver)
                        Server1 (Cloud) 10.1.0.3 
                        
Subnet          10.1.1.0/24
                        
                        Server2 (Dedicated) 10.1.1.3

服务器 1

Ubuntu 22.04

  • 通过 vpn 访问
  • 能ping/访问10.1.0.1、10.1.0.2、10.1.1.3
  • 可以ping/访问互联网
  • 可以解析任何域(外部和网络内部通过 pfSense DNS 解析器)
ip route
default via 10.1.0.1 dev enp7s0 proto static onlink
10.1.0.0/16 via 10.1.0.1 dev enp7s0 proto dhcp src 10.1.0.3 metric 100
10.1.0.1 dev enp7s0 proto dhcp scope link src 10.1.0.3 metric 100
169.254.169.254 via 10.1.0.1 dev enp7s0 proto dhcp src 10.1.0.3 metric 100

网络计划

network:
  version: 2
  renderer: networkd
  ethernets:
    enp7s0:
      dhcp4: true
      routes:
        - to: default
          via: 10.1.0.1
      nameservers:
        addresses:
          - 10.1.0.2
          - 8.8.4.4
          - 8.8.8.8
tracepath -n 10.1.1.3
1?: [LOCALHOST]         pmtu 1450
1:  10.1.0.1            2.623ms
1:  10.1.0.1            1.490ms
2:  169.254.255.255     1.934ms asymm  1
3:  10.1.1.3            25.501ms reached
    Resume: pmtu 1450 hops 3 back 2
tracepath -n google.com
 1?: [LOCALHOST]    pmtu 1450
 1:  10.1.0.1
 1:  10.1.0.1
 2:  10.1.0.2
 3:  172.31.1.1

服务器 2

Ubuntu 22.04

  • 通过 vpn 访问
  • 能ping/访问10.1.0.2、10.1.0.3
  • 无法 ping 通 10.1.1.1
  • 无法 ping/访问互联网
  • 可以解析任何域(外部和网络内部通过 pfSense DNS 解析器)
ip route
default via 10.1.1.1 dev enp2s0.4000 proto static
10.1.1.0/24 dev enp2s0.4000 proto kernel scope link src 10.1.1.3

网络规划

network:
  version: 2
  renderer: networkd
  ethernets:
    enp2s0: {}
vlans:
  enp2s0.4000:
    id: 4000
    link: enp2s0
    mtu: 1400
    addresses:
      - 10.1.1.3/24
    routes:
      - to: default
        via: "10.1.1.1"
    nameservers:
      addresses:
        - 10.1.0.2
        - 8.8.4.4
        - 8.8.8.8
tracepath -n 10.1.0.3
1?: [LOCALHOST]     pmtu 1400
1:  10.1.1.1        0.393ms
1:  10.1.1.1        0.364ms
2:  10.1.0.3        25.265ms reached
    Resume: pmtu 1400 hops 2 back 3
tracepath -n google.com
1?: [LOCALHOST] pmtu 1400
1:  no reply

正如您希望看到的那样,我遇到的问题是专用服务器(服务器 2)似乎无法连接到它的子网网关(10.1.1.1)及以后,但它可以连接到私有中的其他服务器网络就好了。

也许我看错了东西?

netplan
  • 1 1 个回答
  • 67 Views

1 个回答

  • Voted
  1. Best Answer
    stewie
    2023-04-28T23:40:08+08:002023-04-28T23:40:08+08:00

    在有机会与在该领域有丰富经验的人交谈后,他向我指出了文档的这一部分。

    他的假设是 vSwitch 只允许专用网络内部的流量通过并阻止其他一切。

    干净的解决方案是将专用服务器(服务器 2)连接到10.1.0.0/24与我的 pfSense 网关相同的子网 ( ),但 Hetzner 不允许这样做。

    解决方法是使用Wireguard:

    1. 在带有接口的 pfSense 中设置 Wireguard,10.2.0.1/24并使用端点设置专用对等体10.1.1.3
    2. 在接口打开的专用服务器上设置 Wireguard,10.2.0.2/24并在端点上设置 pfSense 对等体10.1.0.2

    由于私有流量在两者之间工作,Wireguard 端点可以是私有 ips。

    1. 允许所有流量从 pfSense 中的 Wireguard 接口流向任何来源

    2. 在专用服务器上设置以下 netplan 以仅通过 Wireguard 隧道路由非私有 ip

    network:
      version: 2
      renderer: networkd
      ethernets:
        enp2s0: {}
    vlans:
      enp2s0.4000:
        id: 4000
        link: enp2s0
        mtu: 1400
        addresses:
          - 10.1.1.3/24
        routes:
          - to: 10.1.0.0/16
            via: 10.1.1.1
            on-link: true
          - to: 10.1.1.0/24
            via: 10.1.1.1
            on-link: true
          - to: default
            via: 10.2.0.1
            on-link: true
        nameservers:
          addresses:
            - 10.1.0.2
            - 8.8.4.4
            - 8.8.8.8
    

    奇迹般有效!

    • 0

相关问题

  • Netplan:如何将整个子网分配给 NIC,除了网关和广播 IP

  • Ubuntu为什么要更改网络配置

  • Ubuntu Desktop 17.10 将不接受带有 wifi 加密狗的静态 IP

  • 使用networkd,如何查看DNS Server

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