我必须经常使用笔记本电脑和各种扩展坞在不同网络之间进行转换。如果我将笔记本电脑从某个网络中移除并将其再次放置在同一网络上,则不会出现问题。当我转移到不同的网络时,我就会遇到问题。
虽然无论如何都不是一个可怕的问题,但我只是觉得它有点烦人。
问题:当我迁移到其他网络时,我必须关闭以太网接口,然后立即将其恢复,以便网络管理器正确执行 DHCP 事务。
是否可以采取任何措施来配置网络管理器,使其自动执行此操作,或者我必须诉诸在连接到新网络时运行的脚本?如果是后者,如何捕获该事件?
编辑更多细节:
扩展坞是这一。以太网端口位于扩展坞本身上,我思考该接口是PCI总线。我不确定扩展坞中的以太网接口是否独立于笔记本电脑上的以太网接口(即独立的 NIC - 我如何验证这一点?;Dmesg 似乎表明了这一点),但这可能是问题的根源。
如果这是真的,那么独立网卡的连接和拆卸是否与仅连接和断开以太网电缆的处理方式不同?我想这可以根据下面的评论使用简单的 udev 规则来处理,但是网络管理器处理此事件的任何细节都是有帮助的。
弹出并重新连接到扩展坞的 Dmesg 转储:
[28240.030058] pci_bus 0000:03: Allocating resources
[28240.030232] pci_bus 0000:04: Allocating resources
[28240.030403] pci_bus 0000:05: Allocating resources
[28240.030488] pci_bus 0000:06: Allocating resources
[28240.030577] pci_bus 0000:0e: Allocating resources
[28240.030721] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28240.031797] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28240.032764] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28240.033674] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28240.035654] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28240.036365] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28240.037290] acpi device:41: Cannot transition to power state D3cold for parent in (unknown)
[28240.037931] pci_bus 0000:01: Allocating resources
[28240.038001] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28240.039031] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28240.040743] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28242.258694] iwlwifi 0000:03:00.0: RF_KILL bit toggled to enable radio.
[28243.951117] usb 3-13: new high-speed USB device number 35 using xhci_hcd
[28244.041718] atkbd serio0: Spurious ACK on isa0060/serio0. Some program might be trying to access hardware directly.
[28244.111432] usb 3-13: New USB device found, idVendor=413c, idProduct=2513
[28244.111442] usb 3-13: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[28244.112626] hub 3-13:1.0: USB hub found
[28244.112707] hub 3-13:1.0: 3 ports detected
[28244.351559] usb 3-4: new high-speed USB device number 36 using xhci_hcd
[28244.479863] usb 3-4: New USB device found, idVendor=413c, idProduct=2513
[28244.479871] usb 3-4: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[28244.481083] hub 3-4:1.0: USB hub found
[28244.481346] hub 3-4:1.0: 3 ports detected
[28244.752072] usb 3-4.1: new low-speed USB device number 37 using xhci_hcd
[28244.843741] usb 3-4.1: New USB device found, idVendor=0461, idProduct=4d81
[28244.843753] usb 3-4.1: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[28244.843782] usb 3-4.1: Product: USB Optical Mouse
[28244.844395] usb 3-4.1: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes
[28244.848841] input: USB Optical Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4.1/3-4.1:1.0/0003:0461:4D81.000C/input/input31
[28244.849518] hid-generic 0003:0461:4D81.000C: input,hidraw3: USB HID v1.11 Mouse [USB Optical Mouse] on usb-0000:00:14.0-4.1/input0
[28244.936269] usb 3-4.2: new low-speed USB device number 38 using xhci_hcd
[28245.047569] usb 3-4.2: New USB device found, idVendor=413c, idProduct=2003
[28245.047583] usb 3-4.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[28245.047588] usb 3-4.2: Product: Dell USB Keyboard
[28245.047613] usb 3-4.2: Manufacturer: Dell
[28245.048142] usb 3-4.2: ep 0x81 - rounding interval to 128 microframes, ep desc says 192 microframes
[28245.054933] input: Dell Dell USB Keyboard as /devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4.2/3-4.2:1.0/0003:413C:2003.000D/input/input32
[28245.055824] hid-generic 0003:413C:2003.000D: input,hidraw4: USB HID v1.10 Keyboard [Dell Dell USB Keyboard] on usb-0000:00:14.0-4.2/input0
[28247.729209] e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx
[28249.870893] acpi PNP0401:00: Already enumerated
[28250.807344] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.807904] pci_bus 0000:02: Allocating resources
[28250.807917] pci_bus 0000:03: Allocating resources
[28250.807962] pci_bus 0000:04: Allocating resources
[28250.807972] pci_bus 0000:05: Allocating resources
[28250.807982] pci_bus 0000:06: Allocating resources
[28250.807993] pci_bus 0000:0e: Allocating resources
[28250.808003] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.808210] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.808378] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.808547] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.808851] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.808988] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.809166] acpi device:41: Cannot transition to power state D3cold for parent in (unknown)
[28250.809259] pci_bus 0000:01: Allocating resources
[28250.809295] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.809423] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.809660] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.851406] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.851931] pci_bus 0000:02: Allocating resources
[28250.851945] pci_bus 0000:03: Allocating resources
[28250.851983] pci_bus 0000:04: Allocating resources
[28250.851992] pci_bus 0000:05: Allocating resources
[28250.852002] pci_bus 0000:06: Allocating resources
[28250.852011] pci_bus 0000:0e: Allocating resources
[28250.852021] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.852209] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.852374] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.852532] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.852809] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.852943] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.853077] acpi device:41: Cannot transition to power state D3cold for parent in (unknown)
[28250.853158] pci_bus 0000:01: Allocating resources
[28250.853195] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.853315] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.853530] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.895446] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.895962] pci_bus 0000:02: Allocating resources
[28250.895974] pci_bus 0000:03: Allocating resources
[28250.896011] pci_bus 0000:04: Allocating resources
[28250.896021] pci_bus 0000:05: Allocating resources
[28250.896030] pci_bus 0000:06: Allocating resources
[28250.896039] pci_bus 0000:0e: Allocating resources
[28250.896049] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.896229] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.896384] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.896533] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.896807] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.896935] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.897067] acpi device:41: Cannot transition to power state D3cold for parent in (unknown)
[28250.897143] pci_bus 0000:01: Allocating resources
[28250.897177] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.897295] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28250.897506] i915 0000:00:02.0: BAR 6: [??? 0x00000000 flags 0x2] has bogus alignment
[28252.727010] iwlwifi 0000:03:00.0: RF_KILL bit toggled to disable radio.
答案1
显然 ifpugd 并没有真正寻找被删除的接口硬件。
我注意到当您插入扩展坞时,该设备被枚举为 eth0。新的 udev 策略应该可以防止不同的设备显示为相同的名称。http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
我猜想,如果启用了可预测的网络接口名称,网络管理员会看到您位于不同的网络上并采取适当的操作。
另一种方法是转储 udev / uevents 并根据即将出现的新以太网接口设置自定义规则。