Problém
Na počítači je pouze jedna síťová karta, ale ifconfig zobrazuje 2 rozhraní podle názvu virbr0 a lxcbr0 . Jak je trvale odstranit nebo zakázat, pokud je nepoužíváte.
# ifconfig .... lxcbr0 Link encap:Ethernet HWaddr 82:61:68:AC:39:0F inet addr:10.116.186.1 Bcast:0.0.0.0 Mask:255.255.255.0 inet6 addr: fe80::8061:68ff:feac:390f/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:5 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:390 (390.0 b) virbr0 Link encap:Ethernet HWaddr 52:54:00:80:A7:C3 inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Řešení
Na hostitelském serveru Linux se přepínač virtuální sítě zobrazuje jako síťové rozhraní. Výchozí, vytvořený při první instalaci a spuštění démona libvirt, se zobrazí jako virbr0. Bude fungovat jako brána pro virtuální počítače ke směrování provozu. libvirtd také vloží pravidla iptables do konfigurace iptable pro správné směrování/natting paketů VM.
Pokud nechcete používat službu libvirtd, můžete ji zastavit, čímž se odstraní všechny tyto síťové konfigurace ze systému pro rozhraní virbr0.
lxcbr0 – je virtuální most vytvořený při instalaci a konfiguraci kontejneru lxc s balíčkem lxc. toto rozhraní můžete také odebrat, pokud nepoužíváte žádné kontejnery lxc.
Odstranění rozhraní virbr0
Případ 1:Nepoužíváte službu libvirtd
Pokud službu libvirtd nepoužíváte, můžete tuto službu zastavit.
Pro RHEL/CentOS 5,6
1. Zastavte službu libvirtd.
# service libvirtd stop
2. Trvale zakažte službu libvirtd, aby se nespustila při startu.
# chkconfig --list | grep libvirtd # chkconfig libvirtd off
Pro RHEL/CentOS 7
1. Zkontrolujte stav služby a zakažte službu libvirtd pomocí příkazu systemctl.
# /bin/systemctl stop libvirtd.service
# /bin/systemctl status libvirtd.service ● libvirtd.service - Virtualization daemon Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled) Active: inactive (dead) since Fri 2016-10-07 11:04:31 IST; 2s ago Docs: man:libvirtd(8) http://libvirt.org Process: 1275 ExecStart=/usr/sbin/libvirtd $LIBVIRTD_ARGS (code=exited, status=0/SUCCESS) Main PID: 1275 (code=exited, status=0/SUCCESS)
2. Chcete-li službu trvale zakázat.
# /bin/systemctl disable libvirtd.service Removed symlink /etc/systemd/system/multi-user.target.wants/libvirtd.service.
Případ 2:Používáte libvirtd a nechcete „virbr0“
V tomto scénáři zůstane služba libvirtd spuštěna, ale odstraníme rozhraní virbr0. Pro odstranění rozhraní virbr0 postupujte podle následujících kroků.
1. Uveďte výchozí nastavení sítě pro virtuální počítače
# virsh net-list Name State Autostart Persistent ---------------------------------------------------------- default active yes yes
2. Zničte výchozí nastavení sítě.
# virsh net-destroy default Network default destroyed
3. Trvale odeberte výchozí virtuální síť z konfigurace.
# virsh net-undefine default Network default has been undefined
4. Rozhraní virbr0 je nyní pryč. Můžete to ověřit ve výstupu příkazu ifconfig nebo ip.
# ifconfig virbr0 virbr0: error fetching interface information: Device not found
Odstranění rozhraní virbr0 na běžících počítačích (netrvání po restartování)
1. Nejprve pomocí níže uvedeného příkazu vypište seznam rozhraní virtuálních mostů dostupných v systému.
# brctl show bridge name bridge id STP enabled interfaces virbr0 8000.5254003008b6 yes virbr0-nic
2. Před odstraněním rozložte rozhraní můstku.
# ip link set virbr0 down
3. Nyní odstraňte můstek
# brctl delbr virbr0
4. zkontrolujte, zda je můstek odstraněn
# brctl show bridge name bridge id STP enabled interfaces
Odebrání rozhraní lxcbr0
lxcbr0 je virtuální most vytvořený při instalaci a konfiguraci kontejneru lxc s balíčkem lxc. Chcete-li odebrat rozhraní lxcbr0, postupujte podle kroků uvedených níže.
1. změňte níže uvedený řádek v /etc/sysconfig/lxc . To bude účinné po restartu.
změňte řádek z
USE_LXC_BRIDGE="true"
do
USE_LXC_BRIDGE="false"
2. můžete odebrat rozhraní mostu lxcbr0 pro běžící systém. Po restartu to ale nebude účinné. proto je třeba nejprve provést výše uvedený krok. Nejprve vyjmenujme mostová rozhraní.
# brctl show
3. Před odstraněním rozložte rozhraní můstku
# ip link set lxcbr0 down
4. Nyní odstraňte most pomocí příkazu ‚brctl delbr‘.
# brctl delbr lxcbr0
5. zkontrolujte, zda je můstek odstraněn.
# brctl show