GNU/Linux >> Znalost Linux >  >> Cent OS

Shell Script pro zjištění stavu a rychlosti propojení síťového rozhraní (CentOS/RHEL)

Tento příspěvek poskytuje ukázkový skript zjišťující, která rozhraní jsou v systému nakonfigurována a která v nich mají svá propojení a jakou rychlostí pracují. Upozorňujeme, že hlášená rychlost ve virtuálních počítačích nemusí být správná. Virtualizovaný síťový adaptér musí předstírat, že má „rychlost“, protože to operační systém očekává, ale protože je virtuální, poběží tak rychle, jak to virtualizační hostitel a fyzická síť dovolí, bez ohledu na rychlost, kterou virtuální NIC hlásí.

Hlášená „rychlost“ je pouze číslo, aby nástroje (např. ethtool na Linuxu) mohly něco hlásit; neomezuje skutečnou rychlost přenosu dat. Ignorujte rychlost hlášenou virtuálním NIC na VM a zacházejte s rychlostí jako závislou na virtualizačním hostiteli a fyzické síti.

Skript

1. Skript určí, která síťová rozhraní jsou aktivní a jejich rychlost.
2. Bude hlásit virtuální rozhraní, ale nezjistí pro ně žádnou rychlost.
3. Skript bude hlásit i vazební rozhraní.

– Zkopírujte níže uvedený skript na svůj server:

# vim detect-speed.sh
#!/bin/bash

for net_dev in `find /sys/class/net/ -type l`; do
        # only need filename without path
        net=`basename $net_dev`
        speed=`ethtool $net | grep Speed | cut -d ':' -f 2 | tr -d " "`
        link=`ethtool $net | grep "Link detected" | cut -d ':' -f 2 | tr -d " "`
        # print result
        if [[ "$link" != "yes" ]]; then
                echo "interface $net has no link detected"
        else
                if [[ "$speed" == "" ]]; then
                        echo "interface $net has link detected but no speed (virtual ?)"
                else
                        echo "interface $net has link detected with speed $speed"
                fi
        fi
done

– Ujistěte se, že skriptu poskytujete také spustitelné oprávnění:

# chmod +x detect-speed.sh

Ukázkový výstup

Níže je ukázkový výstup ze skriptu. Váš výstup se může lišit v závislosti na počtu síťových rozhraní a jejich rychlosti připojení.

# ./detect-speed.sh
interface vif3.0 has link detected but no speed (virtual ?)
interface vif10.0 has link detected but no speed (virtual ?)
interface 0aacd800 has link detected but no speed (virtual ?)
interface p2p1.2 has link detected with speed 1000Mb/s
interface bond0 has link detected with speed 1000Mb/s
interface p2p1 has link detected with speed 1000Mb/s
interface p4p1 has link detected with speed 1000Mb/s
interface lo has link detected but no speed (virtual ?)
interface em1 has link detected with speed 1000Mb/s


Cent OS
  1. Jak deaktivovat NetworkManager na CentOS / RHEL 7

  2. CentOS / RHEL 7 :Jak nakonfigurovat Network Bonding nebo NIC teaming

  3. Jak nakonfigurovat Network Teaming v CentOS/RHEL 7

  1. Jak restartovat síťovou službu na CentOS 8 nebo RHEL 8

  2. Jak zakázat proces Docker a rozhraní docker0 na CentOS/RHEL

  3. Jak vytvořit rozhraní Bridge pomocí nmcli v CentOS/RHEL 7 a 8

  1. CentOS / RHEL 7 :Jak upravit názvy síťových rozhraní

  2. CentOS / RHEL 7 :Konfigurace statické IP adresy pomocí konfiguračních souborů síťového rozhraní

  3. Jak zakázat „Předvídatelné názvy zařízení síťového rozhraní“ v CentOS/RHEL 7