Постоянният мониторинг на мрежата и всеки от нейните компоненти гарантира оптимизиране на връзките и свързаните с нея мрежови услуги, а в сървърна среда е от съществено значение да има стабилна, сигурна и достъпна мрежа, тъй като много процеси и услуги зависят от нея и да администрират клиентски компютри мрежата е повече от съществена.
В случая с дистрибуции на Linux, имаме командата networkctl за наблюдение и получаване на пълна информация за мрежовите интерфейси и по този начин да ги управляваме по много по -всеобхватен и централизиран начин.
Solvetic ще обясни какво е това и как да използва networkctl в Linux, в този случай в Ubuntu 18.04 Server.
Какво е networkctlNetworkctl е помощна програма за командния ред, която е разработена, за да покаже обобщение на мрежовите устройства в системата и съответното им състояние на връзка, освен това с networkctl ще бъде възможно да се консултирате и контролирате мрежовата подсистема на Linux. Networkctl се основава на systemd-network, която е системна услуга, която управлява мрежи, може да открива и конфигурира мрежови устройства, а също така е способна да създава виртуални мрежови устройства.
1. Инсталирайте networkctl, за да видите мрежовите интерфейси
Етап 1
Преди да изпълним networkctl, трябва да проверим дали systemd-networkd работи правилно, в противен случай ще бъде генериран резултат от грешка със следното съобщение:
"ВНИМАНИЕ: systemd-networkd не работи, изходът ще бъде непълен."Стъпка 2
За да проверим текущото състояние на systemd-network, ще изпълним следното:
sudo systemctl статус systemd-networkd
Увеличете
Стъпка 3
В случай, че systemd-networkd не работи, нека го стартираме и го активираме при стартиране на системата, като използваме следните команди:
sudo systemctl стартиране systemd-networkd sudo systemctlenable systemd-networkd
2. Използвайте networkctl, за да видите мрежовите интерфейси в Linux
Етап 1
Сега ще видим как да използваме networkctl за управление на мрежови интерфейси, ако искаме да получим информация за състоянието на мрежовите връзки, ще изпълним следната команда networkctl без никакъв аргумент:
NetworkctlСтъпка 2
В резултат на това откриваме следното:
- Интерфейсен идентификатор
- Тип интерфейс
- Оперативно състояние
- Тип конфигурация
Увеличете
Стъпка 3
Сега, ако искаме да покажем всички мрежови връзки и тяхното текущо състояние, ще използваме параметъра "-a":
networkctl -a
Увеличете
Стъпка 4
За да получим списък на съществуващите връзки и тяхното състояние, използваме командата списък който ще покаже същите резултати като предишната команда:
списък на networkctlСтъпка 5
Ако искаме да получим достъп до информация за конкретните връзки, като посочим подробности като тип, състояние, драйвер на модула на ядрото, хардуер и IP адрес, конфигуриран DNS, сървър и други опции, трябва да използваме командата "status", ако никой не е посочен link, рутируемите връзки се показват по подразбиране, както видяхме в горната част:
състояние на networkctl
Увеличете
Стъпка 6
Също така ще бъде възможно да се посочи интерфейсът за анализ:
мрежово състояние enp0s3Стъпка 7
Това ще ни даде много по -пълен резултат:
Увеличете
Стъпка 8
За да покажем състоянието на LLDP (Link Layer Discovery Protocol), ще използваме командата lldp:
networkctl lldp
Увеличете
Стъпка 9
По подразбиране изходът на networkctl се подава в последователност за пейджинг, за да заобиколим това, можем да добавим флага "-no-pager":
networkctl-no-пейджърСтъпка 10
Също така ще бъде възможно да отпечатате резултата без заглавки и колонтитули на колони, като използвате опцията „--no-legend“:
networkctl --no-legend
Увеличете
Стъпка 11
И накрая, за достъп до помощта на командата можем да изпълним някоя от следните опции:
networkctl -h човек networkctlПо този начин networkctl е съюзник за управлението и контрола на мрежовите интерфейси в Linux.