当网络管理器被禁用时,如何调试网络交易前的长时间暂停?

当网络管理器被禁用时,如何调试网络交易前的长时间暂停?

**由于我已将问题范围缩小了一些,因此进行了编辑。

自从升级到 15.04 以来,我一直遇到网络问题,为此我尝试过更换网卡和全新安装 ubuntu,但都不起作用。我的系统在 12.04 和 14.04 下都很好。在 15.04 下也很好,直到我创建桥接器。

当我启用网桥时,交易开始前会有最多约 30 秒的暂停,就好像网卡被禁用或处于睡眠状态一样。

为了设置网络分接头,我修改了 /etc/network/interfaces 文件,使其包含以下内容:# ifup(8) 和 ifdown(8) 使用的接口(5) 文件 auto lo iface lo inet loopback

auto br0
iface br0 inet dhcp

pre-up tunctl -t tap0 -g tuntap
pre-up tunctl -t tap1 -g tuntap
pre-up ip link set dev eth0 down
pre-up brctl addbr br0
pre-up brctl addif br0 eth0
pre-up brctl addif br0 tap0
pre-up brctl addif br0 tap1
pre-up ip link set dev tap0 up
pre-up ip link set dev tap1 up
pre-up ip link set dev eth0 up
pre-up ip link set dev br0 up

up chmod 0666 /dev/net/tun

post-down ip link set dev eth0 down
post-down ip link set dev tap0 down
post-down ip link set dev tap1 down
post-down ip link set dev br0 down
post-down brctl delif br0 tap0
post-down brctl delif br0 tap1
post-down brctl delif br0 eth0
post-down brctl delbr br0

一些测试表明,造成问题的是桥接设置,而不是分接头。

使用 12.04 和 14.04 我使用以下命令禁用网络管理器:echo "manual" | sudo tee /etc/init/network-manager.override 使用 15.04 我发现我不需要这个。

我已经尝试了两张网卡,这是每张网卡的 lspci 输出:

对于 Atheros,我必须更改 mtu 才能使其与较新的内核兼容

04:00.0 Ethernet controller: Qualcomm Atheros AR8161 Gigabit Ethernet (rev 08)
    Subsystem: Hewlett-Packard Company Device 2ad5
    Flags: bus master, fast devsel, latency 0, IRQ 32
    Memory at f7c00000 (64-bit, non-prefetchable) [size=256K]
    I/O ports at d000 [size=128]
    Capabilities: <access denied>
    Kernel driver in use: alx

我已经尝试过 Realtek 的 r8169 和 r8168 驱动程序

02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
    Subsystem: Device 7470:3468
    Flags: bus master, fast devsel, latency 0, IRQ 27
    I/O ports at e000 [size=256]
    Memory at f7e00000 (64-bit, non-prefetchable) [size=4K]
    Memory at f0000000 (64-bit, prefetchable) [size=16K]
    Capabilities: <access denied>
    Kernel driver in use: r8169

有人可以建议尝试其他什么吗?

谢谢你的帮助

汤姆

答案1

我找到了另一种设置方法,它使用了一些较新的工具并修复了我在 15.04 上的问题。我的网络接口文件现在如下所示:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

dns-search hh.imgtec.org

auto br1
iface br1 inet dhcp
   bridge_ports eth1 eth0
   bridge_stp on
   bridge_fd 0.0
   post-up ip tuntap add dev tap0 mode tap group tuntap
   post-up brctl addif br1 tap0
   post-up ifconfig tap0 up
   post-up ip tuntap add dev tap1 mode tap group tuntap
   post-up brctl addif br1 tap1
   post-up ifconfig tap1 up
   post-up ip tuntap add dev tap2 mode tap group tuntap
   post-up brctl addif br1 tap2
   post-up ifconfig tap2 up

相关内容