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
    • 最新
    • 标签
主页 / server / 问题

问题[bridge](server)

Martin Hope
Damn Vegetables
Asked: 2022-10-22 00:33:51 +0800 CST

一张以太网卡上有两个完全独立的网桥,可能吗?

  • 5

Docker创建了自己的桥,​​当有现有的桥时,两者似乎发生了碰撞。我亲身经历过,互联网上的多个来源都提到了这个问题。我看到的一个解决方案是让 Docker 使用现有的桥,这个说是因为 Docker 的规则搞乱了 KVM 的桥,并提供了下面的解决方案。

我的问题是,为什么这两个桥的配置会相互影响?一个网卡不能在一台电脑上拥有完全独立的两个网桥吗?也就是说,一个网桥的设置不会影响另一个网桥的网络。

$ sudo systemctl edit docker.service
 
[Service]
ExecStartPre=/bin/sh -c “/usr/sbin/iptables -D FORWARD -p all -i br0 -j ACCEPT || true”
ExecStartPre=/usr/bin/iptables -A FORWARD -p all -i br0 -j ACCEPT
 
$ sudo reboot
networking bridge
  • 1 个回答
  • 23 Views
Martin Hope
Misc08
Asked: 2022-02-18 11:37:38 +0800 CST

无法使用 networkd 将带有网桥的容器连接到 Internet

  • 0

我有一台运行 Ubuntu 20.04 LTS 的服务器,通过一个物理以太网接口连接到互联网。我的供应商为我分配了一个静态主 IP4(我将在这里使用 AAAA 作为该 IP),所以我的 systemd-networkd 配置文件之前看起来像这样(禁用 netplan 以直接与 systemd-networkd 一起使用):

# /etc/systemd/network/20-enp7s0.network
[Match]
Name=enp7s0

[Network]
LinkLocalAddressing=ipv6
Address=A.A.A.A/32
Gateway=fe80::1
DNS=X.X.X.1
DNS=X.X.X.2

[Route]
Destination=0.0.0.0/0
Gateway=Y.Y.Y.Y
GatewayOnlink=true

我的提供商向我的服务器添加了一个额外的 IP 地址,该地址被路由到与主 IP 相同的接口。将第二个 IP 添加到我的接口时,我可以 ping 它。因为我使用的是 systemd-nspawn 容器,所以我正在考虑使用这个额外的 IP 来为我的一个容器提供一个专有的静态 IP4(将在此处使用 BBBB)。将 DNS 条目直接映射到我的服务器上的容器会很棒,而服务器上的所有其他应用程序仍使用主 IP 地址。

所以我开始遵循 Arch wiki 关于systemd-nspawn和systemd -networkd 的良好说明。我配置了一个网桥并将所有地址从物理接口移到它:

/etc/systemd/network/br0.netdev

[NetDev]
Name=br0
Kind=bridge
MACAddress=xx:xx:xx:xx:xx:xx  # same as my phys. interface

/etc/systemd/network/20-br0.network

[Match]
Name=br0

[Network]
LinkLocalAddressing=ipv6
Address=A.A.A.A/32
Gateway=fe80::1
DNS=X.X.X.1
DNS=X.X.X.2

[Route]
Destination=0.0.0.0/0
Gateway=Y.Y.Y.Y
GatewayOnlink=true

/etc/systemd/network/20-enp7s0.network

[Match]
Name=enp7s0

[Network]
Bridge=br0

IP4 转发已启用:

$ sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1

我使用以下配置启动我的 nspawn 容器:

/etc/systemd/nspawn/mycontainer.nspawn

[Network]
VirtualEthernet=yes
Bridge=br0

在容器内(Debian 11 Bullseye),我启用了 systemd-networkd 并使用以下配置进行联网:

# /etc/systemd/network/80-container-host0.network
[Match]
Name=host0

[Network]
Address=B.B.B.B/32
DNS=X.X.X.1
DNS=X.X.X.2

[Route]
Destination=0.0.0.0/0
Gateway=Y.Y.Y.Y
GatewayOnlink=true

这是此配置的结果。在主机上:

$ ip a

2: enp7s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master br0 state UP group default qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet A.A.A.A/32 scope global br0
       valid_lft forever preferred_lft forever
6: vb-mycontainer@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br0 state UP group default qlen 1000
    link/ether yy:yy:yy:yy:yy:yy brd ff:ff:ff:ff:ff:ff link-netnsid 0

$ networkctl status -a
● 1: lo      [...]                                  
● 2: enp7s0                                                            
             Link File: /usr/lib/systemd/network/99-default.link       
          Network File: /etc/systemd/network/20-enp7s0.network         
                  Type: ether                                          
                 State: enslaved (configured)
                  Path: pci-0000:07:00.0                               
                Driver: igb                                            
                Vendor: Intel Corporation                              
                 Model: I210 Gigabit Network Connection                
            HW Address: xx:xx:xx:xx:xx:xx                              
                   MTU: 1500 (min: 68, max: 9216)                      
  Queue Length (Tx/Rx): 8/8                                            
      Auto negotiation: yes                                            
                 Speed: 1Gbps                                          
                Duplex: full                                           
                  Port: tp                                             
     Activation Policy: up                                             
   Required For Online: yes                                            
● 3: br0                                                                 
               Link File: /usr/lib/systemd/network/99-default.link       
            Network File: /etc/systemd/network/20-br0.network            
                    Type: bridge                                         
                   State: routable (configured)
                  Driver: bridge                                         
              HW Address: xx:xx:xx:xx:xx:xx                              
                     MTU: 1500 (min: 68, max: 65535)                     
           Forward Delay: 15s                                            
              Hello Time: 2s                                             
                 Max Age: 20s                                            
             Ageing Time: 5min                                           
                Priority: 32768                                          
                     STP: no                                             
  Multicast IGMP Version: 2                                              
    Queue Length (Tx/Rx): 1/1                                            
                 Address: A.A.A.A                                                  
                 Gateway: Y.Y.Y.Y (Juniper Networks)                  
                          fe80::1 (Juniper Networks)                     
                     DNS: X.X.X.1                                    
                          X.X.X.2                                                           
       Activation Policy: up                                             
     Required For Online: yes                                            
● 6: vb-mycontainer                                              
             Link File: /usr/lib/systemd/network/99-default.link
          Network File: n/a                                     
                  Type: ether                                   
                 State: degraded (unmanaged) 
                Driver: veth                                    
            HW Address: yy:yy:yy:yy:yy:yy                       
                   MTU: 1500 (min: 68, max: 65535)              
  Queue Length (Tx/Rx): 1/1                                     
      Auto negotiation: no                                      
                 Speed: 10Gbps                                  
                Duplex: full                                    
                  Port: tp                                      
               Address: fe80::xxxx:xxxx:xxxx:xxxx               
     Activation Policy: up                                      
   Required For Online: yes

$ ip route
default via Y.Y.Y.Y dev br0 proto static onlink

在我的容器内:

# ip a
1: lo: [...]
2: host0@if6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether yy:yy:yy:yy:yy:yy brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet B.B.B.B/32 scope global host0
       valid_lft forever preferred_lft forever
    inet6 fe80::xxxx:xxxx:xxxx:xxxx/64 scope link 
       valid_lft forever preferred_lft forever

# networkctl status -a
● 1: lo           [...]
● 2: host0                                                                     
                     Link File: n/a
                  Network File: /etc/systemd/network/80-container-host0.network
                          Type: ether
                         State: routable (configured)
                    HW Address: zz:zz:zz:zz:zz:zz
                           MTU: 1500 (min: 68, max: 65535)
                         QDisc: noqueue
  IPv6 Address Generation Mode: eui64
          Queue Length (Tx/Rx): 1/1
              Auto negotiation: no
                         Speed: 10Gbps
                        Duplex: full
                          Port: tp
                       Address: B.B.B.B
                                fe80::xxxx:xxxx:xxxx:xxxx
                       Gateway: Y.Y.Y.Y
                           DNS: X.X.X.1
                                X.X.X.2
             DHCP6 Client DUID: DUID-EN/Vendor:0000ab117511f183668420370000

Feb 17 19:45:26 mycontainer systemd-networkd[25]: host0: Link UP
Feb 17 19:45:26 mycontainer systemd-networkd[25]: host0: Gained carrier
Feb 17 19:45:27 mycontainer systemd-networkd[25]: host0: Gained IPv6LL

# ip route
default via Y.Y.Y.Y dev host0 proto static onlink

关于所有其他设置,我坚持系统默认设置。但它不起作用,我无法从主机 ping 到客人,也不能从客人 ping 到主机、互联网或网关,只是得到Destination Host Unreachable。那么我在这里想念什么吗?我对网络的了解并不深入,并且已经在这方面花费了很多时间,但已经为我可能犯的一些愚蠢的错误道歉。欢迎每条线索。谢谢!

编辑:

我查看了邻居表:

Host:

$ ip neighbor
Y.Y.Y.Y dev br0 lladdr 84:c1:c1:76:ae:9b REACHABLE <- gateway
fe80::f80b:aff:fe80:d92 dev vb-mycontainer  FAILED
fe80::6c91:a7ff:fe1f:19a2 dev br0  FAILED
fe80::1 dev br0 lladdr 84:c1:c1:76:ae:9b router STALE
fe80::f80b:aff:fe80:d92 dev br0 lladdr fa:0b:0a:80:0d:92 STALE

Guest:

$ ip neighbor
fe80::7e10:c9ff:fe21:ed87 dev host0 lladdr 7c:10:c9:21:ed:87 router STALE
fe80::6c91:a7ff:fe1f:19a2 dev host0  FAILED
fe80::1 dev host0 lladdr 84:c1:c1:76:ae:9b router STALE

fe80::6c91:a7ff:fe1f:19a2 是主机上虚拟接口 vb-mycontainer 的链接区域设置地址。所以我假设的客人和主人之间似乎存在连接问题?

bridge linux-networking systemd-networkd static-ip
  • 1 个回答
  • 295 Views
Martin Hope
NK-cell
Asked: 2021-10-20 09:27:46 +0800 CST

有没有办法在 Linux 网桥上配置端口安全性?

  • 0

在交换机上有一个特性,比如端口安全。粗略地说,它允许控制哪些 MAC 可以在特定的交换机端口上。您可以将其限制为仅一个或多个 MAC,并且来自某些新设备的以太网帧将被阻止。

那么有没有办法在Linux桥中做到这一点?

这篇文章没有帮助。

linux security bridge ethernet linux-networking
  • 1 个回答
  • 127 Views
Martin Hope
Norman Pellet
Asked: 2021-08-03 01:53:17 +0800 CST

netplan + libvirt - 我应该设置 virbr0 虚拟网桥吗?

  • 0

据我了解,接口 virbr0 和 virbr0-nic 是由 libvirt 创建和管理的。


● 4: virbr0
       Link File: /lib/systemd/network/99-default.link
    Network File: n/a
            Type: ether
           State: no-carrier (unmanaged)
          Driver: bridge
      HW Address: 52:54:00:0f:26:e6
         Address: 192.168.122.1

● 5: virbr0-nic
       Link File: /lib/systemd/network/99-default.link
    Network File: n/a
            Type: ether
           State: off (unmanaged)
          Driver: tun
      HW Address: 52:54:00:0f:26:e6

但是 libvirt 没有在我的 netplan 文件夹中添加任何内容(也没有出现在 nmcli 或 /etc/network/interfaces 中)。我假设这些接口是由 libvirt 在守护进程启动时创建和启动的。

那么最好不要在 netplan 中指定它们,还是应该在我的配置中添加它们?

另外,从理论上讲,根据 netplan 配置的虚拟网桥会是什么样子?

networking kvm-virtualization bridge libvirt linux-networking
  • 1 个回答
  • 226 Views
Martin Hope
David Le Borgne
Asked: 2021-05-13 02:47:35 +0800 CST

如果网桥没有接口,OVH Proxmox 6.4 上的网络启动失败

  • 1

我们正在使用 OVH 提供的模板在 OVH (Advance-2) 硬件上设置一个新的 Proxmox 6.4(基于 Debian 10.9)主机。

为了为 VM 和 LXC 创建一个“虚拟”桥接,我们将这些行添加到/etc/network/interfaces:

auto vmbr1
iface vmbr1 inet static
        address 10.0.1.254/24
        bridge-ports none
        bridge-stp off
        bridge-fd 0

此配置在我们所有的 Proxmox 主机上都可以正常工作,但在新机器上失败:在“启动提升网络接口”时重新启动需要 20 分钟,失败并显示“启动提升网络接口失败”,并且网桥接口未启动。

在没有 vmbr1 的情况下重新启动后,我可以看到它systemctl restart networking挂在“开始等待 vmbr1 链接启动”上

May 12 10:01:49 pve7 ifup[7300]: Waiting for vmbr1 to get ready (MAXWAIT is 2 seconds).
May 12 10:01:49 pve7 ifup[7300]: Disabling IPv6 autoconfiguration for vmbr1
May 12 10:01:49 pve7 ifup[7300]: net.ipv6.conf.vmbr1.accept_ra = 0
May 12 10:01:49 pve7 ifup[7300]: net.ipv6.conf.vmbr1.accept_dad = 0
May 12 10:01:49 pve7 ifup[7300]: net.ipv6.conf.vmbr1.autoconf = 0
May 12 10:01:49 pve7 ifup[7300]: Starting to wait for vmbr1 link to be up at Wed May 12 10:01:49 UTC 2021
debian bridge proxmox ovh
  • 1 个回答
  • 1115 Views
Martin Hope
Tom
Asked: 2021-05-09 12:38:58 +0800 CST

Docker:如何让容器访问主机上的网桥?VPN-over-VPN

  • 3

我正在尝试对接一个 vpn-over-vpn 设置,我一直在使用该设置通过另一个 VPN 连接桥接两个 lan 段,但我遇到了一个似乎应该有解决方案的障碍。

VLAN1 <-> USB-Ethernet adapter <-> [ tincd (Mode: switch) <-> openconnect ] <-> LAN <-> {internet} <-> tincd (remote) <-> VLAN1 (remote)

我在没有 docker 容器的情况下工作的方式是,tincd 本质上被配置为连接到只有在建立 openconnect VPN 时才能访问的 IP 地址。我有一个桥接器“vpn-bridge”,它桥接 USB-以太网适配器以及 tincd 守护程序,以及一个允许从/向桥接接收和转发的 iptables 规则。这很好用,设备可以看到并相互交谈,就好像它们在同一个 LAN 上一样。

所以我创建了一个 docker 容器。我在容器内运行了 openconnect 客户端并成功连接到远程网络,并且我在容器内也运行了 tincd 守护程序,这意味着它能够在 VPN 之上建立 VPN。因为我不希望对路由等的 openconnect 更改影响主机,所以我正在vpcbr为该容器使用网络。

现在,在我的tinc-up脚本中,我告诉 tincd 将它创建的接口添加到我的网桥中,其中包含 USB 以太网适配器,它允许它接受/转发流量。这是tinc-up脚本中的相关部分:

ifconfig "$INTERFACE" "0.0.0.0"
brctl addif vpn-bridge "$INTERFACE"
ifconfig "$INTERFACE" up
iptables -A FORWARD -i vpn-bridge -o vpn-bridge -j ACCEPT

直接在主机上执行此操作很容易,网桥已经存在并且网桥已经与 USB 以太网适配器链接。但是在 docker 容器内部,这个桥不存在,即使我创建了它,我也无法将它与 USB 以太网接口链接,而 USB 以太网接口不能从容器内部直接访问。我也不希望容器使用“主机”网络,因为我不希望 openconnect 路由更改影响主机上运行的其他东西。

我找不到将主机上现有桥接器暴露给 docker 容器的方法,以便brctl addif通过 tincd 完成的工作。有没有办法以某种方式做到这一点?或者这是 ipvlan 以某种方式解决的问题?我很难找到 ipvlan 的示例或将它们与 docker-compose 一起使用的方法。

vpn bridge docker
  • 1 个回答
  • 3643 Views
Martin Hope
Chaoxiang N
Asked: 2021-05-04 08:37:42 +0800 CST

强制mac地址时linux ipv6桥地址不起作用

  • 1

在 ubuntu 焦点上使用 linux 桥接和 ipv6 时,我遇到了一个我想了解的问题。

当我手动设置网桥mac地址时,网桥ipv6地址不再起作用,为什么?

使用系统分配的 MAC 地址进行桥接 [工作正常]

root@node:~# ip link del dev brv6
root@node:~# ip link add name brv6 type bridge
root@node:~# ip -6 address add dev brv6 scope global fdfe::401/118
root@node:~# ip link set dev brv6 up
root@node:~# ping -c2 fdfe::401
PING fdfe::401(fdfe::401) 56 data bytes
64 bytes from fdfe::401: icmp_seq=1 ttl=64 time=0.035 ms
64 bytes from fdfe::401: icmp_seq=2 ttl=64 time=0.029 ms

--- fdfe::401 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1007ms
rtt min/avg/max/mdev = 0.029/0.032/0.035/0.003 ms
root@node:~# ip link show dev brv6
13: brv6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/ether b2:75:42:d1:de:a9 brd ff:ff:ff:ff:ff:ff

使用手动分配的 mac 地址进行网桥 [不起作用]

root@node:~# ip link del dev brv6
root@node:~# ip link add name brv6 type bridge
root@node:~# ip link set dev brv6 address 6a:58:ea:de:65:79
root@node:~# ip -6 address add dev brv6 scope global fdfe::401/118
root@node:~# ip link set dev brv6 up
root@node:~# ping -c2 fdfe::401
PING fdfe::401(fdfe::401) 56 data bytes
From 2001:321:4321:ab:acf4::1 icmp_seq=1 Destination unreachable: Address unreachable
From 2001:321:4321:ab:acf4::1 icmp_seq=2 Destination unreachable: Address unreachable

--- fdfe::401 ping statistics ---
2 packets transmitted, 0 received, +2 errors, 100% packet loss, time 1021ms
root@node:~# ip link show dev brv6
14: brv6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    link/ether 6a:58:ea:de:65:79 brd ff:ff:ff:ff:ff:ff

谢谢你的帮助。

linux bridge ipv6
  • 1 个回答
  • 688 Views
Martin Hope
Patrice Levesque
Asked: 2021-02-19 14:58:20 +0800 CST

Debian:在同一个 NIC 上,网桥加上不同的 IP 地址,具有不同的 MAC

  • 0

Debian 主机。我有一个应该位于两个网络上的 NIC;172.16.0.0/24和10.0.80.0/24。_

  • 在172.16.0.0/24网络上,应该有一个网桥,以便本地 KVM 主机可以连接到它;主机应该在172.16.0.99.
  • 在10.0.80.0/24网络上,不需要网桥,机器应该在10.0.80.99.

一个便宜的 D-Link 交换机连接到该 NIC;它可能会被与同一个 MAC 关联的多个 IP 地址混淆。

我尝试过给 NIC 起别名(例如添加设备enp1s0:0),给网桥起别名(例如vmbr0:0相同的 NIC、网桥别名、MAC 地址修改)。

作为参考,这是桥的设置;如何将10.0.80.99地址添加到同一个 NIC,最好为其强制使用不同的 MAC 地址?

iface enp1s0   inet manual

auto  vmbr0
iface vmbr0 inet static
        address      172.16.0.99/24
        gateway      172.16.0.1
        bridge_ports enp1s0
        bridge_stp   off
        bridge_fd    0
linux networking debian bridge
  • 1 个回答
  • 243 Views
Martin Hope
Ingo
Asked: 2021-01-27 09:42:45 +0800 CST

使用 libvirt 为 Linux 桥接虚拟机提供 VLAN 支持

  • 1

我正在使用systemd-networkd在所有节点上使用Debian Bullseye为KVM(基于内核的虚拟机)配置由libvirt管理的网络接口。我想在使用Linux Bridge的虚拟机上支持透明 VLAN 。对于 Linux Bridge,这不受libvirt支持。

例如,我有一个虚拟机,其三个接口连接到网桥:

host ~$ virsh attach-interface guest-vm bridge br0 --config
host ~$ virsh attach-interface guest-vm bridge br0 --config
host ~$ virsh attach-interface guest-vm bridge br0 --config

现在,当运行来宾时,我将在桥上看到:

host ~$ sudo bridge link
3: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 master br0 state forwarding priority 32 cost 4
30: vnet13: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 master br0 state forwarding priority 32 cost 100
31: vnet14: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 master br0 state forwarding priority 32 cost 100
32: vnet15: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 master br0 state forwarding priority 32 cost 100

所有接口都成功连接到网桥。enp1s0是主机上的上行链路接口。现在查看网桥上的 VLAN id 时,我看到:

~$ sudo bridge vlan
port              vlan-id
enp1s0            10
                  26
                  30
                  50

仅显示主机接口及其 VLAN id。

有没有办法将 VLAN id 附加到vnet*来宾的其他接口,以便它可以使用它们?

debian vlan kvm-virtualization bridge systemd-networkd
  • 2 个回答
  • 4186 Views
Martin Hope
asoundmove
Asked: 2020-12-21 18:02:12 +0800 CST

使用 nftables 路由(Fedora33、nmcli、brctl)

  • 0

A/ 带有以太网的主机 (Fedora 33) 如果eth0. ip 192.168.18.11(/24)
和
B1/ Kvm guest with ifvnet0被奴役到virbr101. ip 192.168.101.88(/24)(手动路由,静态 IP)
或
B2/Kvm guest with ifvnet1被奴役到virbr102. ip 192.168.102.210(/24) (virt-manager 路由, DHCP)

使用下面显示的配置,我似乎缺少让它工作的步骤。不知道如何调试我的设置。

会发生什么:

  1. 从 A,我可以 ping B 和 ssh 进入 B
  2. 从 B,我可以 ping A
  3. 从A,我可以ping 192.168.18.1
  4. 从 B,我无法 ping 192.168.18.1,这就是我现阶段要解决的问题

B1 和 B2 之间的区别在于,如果我 ping 一个命名服务器,例如 google.com,用 B1 它说没有到主机的路由,用 B2 它找到 IP 地址,但没有 ping 回复。

nmcli使用+ brctl+的路由网络nft

在主机上,virbr101:

ip link add virbr101-mac address 52:54:41:0b:00:01 type dummy
brctl addif virbr101 virbr101-mac

文件ifcfg-virbr101:

DEVICE=virbr101
NAME=virbr101
# Change to 'no' to disable NetworkManager for this interface.
NM_CONTROLLED=yes
ONBOOT=yes
TYPE=Bridge
DELAY=2
STP=on

IPADDR=192.168.101.1
NETMASK=255.255.255.0

激活此界面:

nmcli connection load /etc/sysconfig/network-scripts/ifcfg-virbr101
nmcli connection up virbr101

启用 ip 转发:

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
echo "net.ipv4.conf.all.forwarding=1" >> /etc/sysctl.conf
echo "net.ipv6.conf.all.forwarding=1" >> /etc/sysctl.conf
sysctl -p

使用以下nft命令路由接口:

delete table ip filter
add table ip filter
add chain ip filter INPUT
add chain ip filter FORWARD
add chain ip filter OUTPUT
add rule ip filter FORWARD oifname "virbr101" ip daddr 192.168.101.0/24 counter accept
add rule ip filter FORWARD iifname "virbr101" ip saddr 192.168.101.0/24 counter accept
add rule ip filter FORWARD iifname "virbr101" oifname "virbr101" counter accept
add rule ip filter FORWARD iifname "virbr101" counter reject
add rule ip filter FORWARD oifname "virbr101" counter reject

路由网络使用virt-manager

网络:

<network>
  <name>bridged102</name>
  <uuid>2e8d6e42-b70e-43c8-8523-02008070f03c</uuid>
  <forward dev="ens3" mode="route">
    <interface dev="ens3"/>
  </forward>
  <bridge name="virbr0" stp="on" delay="0"/>
  <mac address="52:54:00:42:1d:e4"/>
  <domain name="bridged102"/>
  <ip address="192.168.102.1" netmask="255.255.255.0">
    <dhcp>
      <range start="192.168.102.128" end="192.168.102.254"/>
    </dhcp>
  </ip>
</network>

访客界面:

<interface type="network">
  <mac address="52:54:00:ee:a6:67"/>
  <source network="bridged102" portid="238df934-14ac-422e-bfbd-a4047a9444fb" bridge="virbr0"/>
  <target dev="vnet1"/>
  <model type="virtio"/>
  <link state="up"/>
  <alias name="net1"/>
  <address type="pci" domain="0x0000" bus="0x00" slot="0x08" function="0x0"/>
</interface>

对于virt-manager解决方案,我遵循了以下示例:libvirt docs // Network XML format // Routed network config

routing kvm-virtualization bridge nftables nmcli
  • 1 个回答
  • 385 Views

Sidebar

Stats

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

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

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

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve