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 / 问题 / 1293208
Accepted
user1145391
user1145391
Asked: 2020-11-18 19:03:20 +0800 CST2020-11-18 19:03:20 +0800 CST 2020-11-18 19:03:20 +0800 CST

无法在网络接口上禁用本地地址

  • 772

我的服务器:

  • 华擎 B450M/ac (RealTek 8111/8168/8411)
  • 锐龙5 3400G
  • 64GB 系统内存
  • Rosewill RC-411v3 (RealTek 8111/8168/8411)

我的电脑:

  • 锐龙 7 2700X
  • 32GB 系统内存
  • MSI X470 Gaming Pro Carbon(英特尔 I211)

我正在尝试以模式 6 (balance-alb) 与我的服务器建立网络绑定,并且在大多数情况下我已经让它工作了。我遇到一个问题,其中一个或两个网卡将随机获得 IPv4 和/或 IPv6 地址。我不认为 IPv6 地址很重要,但是当他们获得 IPv4 地址时,他们会破坏绑定,我会失去与服务器的所有连接。我目前的配置如下;

network:
  version: 2
  renderer: networkd
  ethernets:
    enp5s0:
      link-local: [ ]
      #dhcp4: no
      #dhcp6: no
    enp4s0:
      link-local: [ ]
      #dhcp4: no
      #dhcp6: no
  bonds:
    bond0:
      addresses: [192.168.0.102/24]
      gateway4: 192.168.0.1
      nameservers:
        addresses: [1.1.1.1, 1.0.0.1]
      dhcp6: no
      interfaces: [enp5s0, enp4s0]
      parameters:
        mode: balance-alb
        mii-monitor-interval: 1

我已经尝试过网络和 NetworkManager。我还尝试了 netplan 0.99 和 0.100。即使netplan说它应该禁用此配置,也不会禁用本地地址。如何在这些接口上禁用本地地址?

编辑:删除了 dhcp 行,因为它们似乎没有做任何事情。更新一些复制细节。禁用 IPv6 似乎消除了将 IPv4 地址添加到任一卡的问题。如果再次运行,此修复程序将再次被破坏netplan apply。但是,有时这两张卡在运行后的一段时间内都不会获得 IP。这让我可以进行速度测试并证明这是可行的,虽然不是完美无缺。更改配置后最好重新启动,但是在重新启动后不久,IP 会添加到其中一张卡上。通常为 169.254.xx 这不会破坏所有内容,但平衡似乎会因相同的传输(上传或下载)而中断。例如,我同时上传和运行速度测试(都向服务器发送数据)。其中一张卡不会接收任何数据,另一张卡将以 500mbit/s 的速度拆分两个连接。同时运行上传和下载时,这似乎不是问题。

更新:Welp,我放弃并重新安装了操作系统。我专门安装了 Ubuntu 20.04.1 LTS。在上面的 netplan 配置中安装并安装了所有东西。它只是工作,我什至不必启用绑定,它只是启用了自己。自从我重新安装了操作系统后,任何一张卡都没有添加任何 IP。尽管我的问题已解决,但我仍然不知道最初添加这些 IP 的原因。似乎另一个程序正在追溯添加 IP。我发现另一个帖子也有人提到了这种怀疑。

networking netplan network-bonding systemd-networkd 20.04
  • 1 1 个回答
  • 767 Views

1 个回答

  • Voted
  1. Best Answer
    Terrance
    2020-11-19T15:49:02+08:002020-11-19T15:49:02+08:00

    由于额外的 IP 又回来了,请看下面的注释。所以我相信我发现了问题所在以及如何阻止他们获得额外的 IP。

    我正在写这个作为答案,因为当我尝试使用 netplan 时,我的连接不稳定,我的网卡上出现了额外的 IP。

    在 20.04 LTS 上使用内核 5.4.0-54-generic。

    在我将 netplan 全部转储到一起时使用ifupdown和设置文件。/etc/network/interfaces

    安装ifupdown和ifenslave

    sudo apt install ifupdown ifenslave
    

    删除网络计划:

    sudo apt remove netplan.io
    

    接下来,我停止了systemd-networkdand systemd-networkd.socket:

    systemctl stop systemd-networkd.service
    systemctl stop systemd-networkd.socket
    systemctl disable systemd-networkd.service
    systemctl disable systemd-networkd.socket
    

    检查您/etc/modules的以下几行:

    loop
    lp
    rtc
    bonding
    

    我还进行了设置,因此我没有为我的以太网卡使用预测命名。 我听人说这可能很糟糕,但它一直对我有用。

    将以下内容添加到/etc/default/grub文件中,然后运行sudo update-grub并重新启动以使更改生效。

    GRUB_CMDLINE_LINUX_DEFAULT="nosplash net.ifnames=0 biosdevnames=0"
    

    然后将我的接口添加到/etc/network/interfaces绑定设置中balance-alb:

    # This file describes the network interfaces available on your system
    # and how to activate them. For more information, see interfaces(5).
    
    source /etc/network/interfaces.d/*
    
    # The loopback network interface
    auto lo
    iface lo inet loopback
    
    auto eth0
        iface eth0 inet manual
        bond-master bond0
    
    auto eth1
        iface eth1 inet manual
        bond-master bond0
    
    auto bond0
        iface bond0 inet static
        address 10.0.0.220
        netmask 255.255.255.0
        network 10.0.0.0
        broadcast 10.0.0.255
        gateway 10.0.0.1
        bond-mode balance-alb
        bond-miimon 100
        bond-slaves eth0 eth1
    

    我也做到了,所以我resolv.conf不再受存根或其他任何东西的控制。

    sudo unlink /etc/resolv.conf
    echo "nameserver 10.0.0.1" | sudo tee /etc/resolv.conf
    

    您可以将您的名称服务器更改为您的路由器,或者如果您想使用 8.8.8.8。

    您还可以将更多名称服务器添加tee -a到resolv.conf:

    echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf
    

    2021 年 2 月 25 日注意: 我最近对我的系统进行了更新,它重新启动了我的卡以再次接收额外的 IP。为了解决这个问题,我必须添加denyinterfaces eth0 eth1到/etc/dhcpcd.conf文件中。下面是我的/etc/dhcpcd.conf文件的样子。 根据您的网络的需要进行更改。

    denyinterfaces eth0 eth1
    interface bond0
            static ip_address=10.0.0.220/24
            static routers=10.0.0.1
            static domain_name_servers=9.9.9.9 149.112.112.112
    

    应用这些网络设置:

    sudo /etc/init.d/networking restart
    

    检查ifconfig并检查/proc/net/bonding/bond0

    ifconfig
    bond0: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST>  mtu 1500
            inet 10.0.0.220  netmask 255.255.255.0  broadcast 10.0.0.255
            ether bc:5f:f4:79:66:fe  txqueuelen 1000  (Ethernet)
            RX packets 85381  bytes 12752852 (12.7 MB)
            RX errors 0  dropped 5  overruns 0  frame 0
            TX packets 125655  bytes 156764973 (156.7 MB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    eth0: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
            ether bc:5f:f4:79:66:fe  txqueuelen 1000  (Ethernet)
            RX packets 76259  bytes 10724189 (10.7 MB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 12520  bytes 4905475 (4.9 MB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    eth1: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST>  mtu 1500
            ether c8:3a:35:d6:ec:a0  txqueuelen 1000  (Ethernet)
            RX packets 9122  bytes 2028663 (2.0 MB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 113135  bytes 151859498 (151.8 MB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
            inet 127.0.0.1  netmask 255.0.0.0
            loop  txqueuelen 1000  (Local Loopback)
            RX packets 55907  bytes 158911787 (158.9 MB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 55907  bytes 158911787 (158.9 MB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    

    和

    cat /proc/net/bonding/bond0
    Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
    
    Bonding Mode: adaptive load balancing
    Primary Slave: None
    Currently Active Slave: eth0
    MII Status: up
    MII Polling Interval (ms): 100
    Up Delay (ms): 0
    Down Delay (ms): 0
    Peer Notification Delay (ms): 0
    
    Slave Interface: eth0
    MII Status: up
    Speed: 1000 Mbps
    Duplex: full
    Link Failure Count: 0
    Permanent HW addr: bc:5f:f4:79:66:fe
    Slave queue ID: 0
    
    Slave Interface: eth1
    MII Status: up
    Speed: 1000 Mbps
    Duplex: full
    Link Failure Count: 0
    Permanent HW addr: c8:3a:35:d6:ec:a0
    Slave queue ID: 0
    
    • 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