Как узнать uuid сетевой карты в centos 7

Обновлено: 05.07.2024

Иногда нужно посмотреть сетевые карты в Linux, подключенные к компьютеру, узнать имя продукта или технические характеристики карты, а также скорость передачи данных. Например, когда вы хотите проверить совместимость сетевого драйвера или модуля ядра с Ethernet адаптером необходимо знать его аппаратные спецификации, такие как: номер модели и производитель, (например: Broadcom NetXtreme, Intel I350), скорость (например: (1 Гбит/сек, 10 Гбит/сек), режим соединения (full/half duplex) и т д.

Также эта информация вам понадобится, если вы хотите подобрать драйвер для своего wifi адаптера. В этой инструкции я расскажу как узнать сетевую карту Linux и посмотреть все доступные ее характеристики.

Информация о сетевой карте с помощью Ethtool

Если вас интересует информация о проводной сетевой карте Ehternet, то вы можете воспользоваться утилитой Ethtool. Это инструмент командной строки для проверки и изменения настроек PCI Ethernet карт. Для установки Ethtool в Ubuntu или Debian используйте команду:

sudo apt install ethtool

В других дистрибутивах установка производится аналогичным образом, только нужно использовать подходящий пакетный менеджер.

Для отображения настроек сетевой карты в ethtool запустите утилиту передав в параметрах имя сетевого адаптера. Права суперпользователя здесь нужны для того, чтобы утилита могла получить информацию о настройках локальной сети и статусе соединения.

sudo ethtool eth0

net

Здесь вы можете посмотреть поддерживаемые режимы работы Supported link modes, скорость Speed и тип коннектора Port, а также состояние подключения. Для просмотра информации о сетевом драйвере и прошивке используйте опцию i:

sudo ethtool -i eth0

net1

Здесь вы можете видеть какие режимы поддерживает прошивка, а также ее версию. Если вас интересует MAC адрес выполните:

sudo ethtool -P eth0

net2

Информация о сетевой карте в lshw

Во втором способе мы воспользуемся утилитой для отображения подробной информации об аппаратуре Linux - lshw. С помощью нее вы можете посмотреть информацию не только о карте Ethernet, но и о Wifi адаптере, а также посмотреть список сетевых карт.

Для установки lshw на Ubuntu или Debian наберите:

sudo apt install lshw

Чтобы посмотреть узнать сетевую карту linux и просмотреть подробные сведения о ней, запустите утилиту со следующими параметрами:

sudo lshw -class network

net4

В выводе команды вы увидите все подключенные к системе сетевые интерфейсы, кроме того, тут показывается более подробная информация, чем в выводе предыдущей утилиты. В самом начале вы видите производителя - vendor и имя продукта - product, скорость передачи данных size, а также в разделе configuration можно найти поле driver, где указан используемый драйвер.

Список сетевых карт в lspci

Если вам нужно узнать только продукт и имя производителя вашей сетевой карты можно использовать lspci. Обычно lscpi уже предустановлена в системе, но если нет ее можно установить командой:

sudo apt install pciutils

Теперь для просмотра доступных сетевых карт используйте:

lspci | grep -i 'net'

net5

Тут вы можете видеть, что к системе подключены две сетевые карты linux, для проводного интернета и беспроводная, обе от Broadcom.

Информация о сетевой карте с помощью ip

Утилита ip позволяет посмотреть более подробную информацию о сетевом протоколе для вашей карты. Для просмотра информации выполните:

net6

На снимке экрана вы видите две физические сетевые карты linux - wlan0 и eth0, а также два виртуальных устройства. Для каждой из карт можно узнать состояние и MAC адрес.

Выводы

В этой статье мы рассмотрели несколько способов узнать сетевую карту Linux. Вы можете посмотреть не только производителя и название устройства, но и его характеристики, такие как скорость сетевой карты linux, используемый драйвер и MAC адрес. Если у вас остались вопросы, спрашивайте в комментариях!

Обычно неактивный интерфейс выделен серым цветом а активный зелёным.

NAME UUID TYPE DEVICE enp0s3 64486a76-a4b0-4693-9110-205da942c9c5 ethernet -- enp0s8 fc26857f-4cb0-3756-a7fa-95ec246b3981 ethernet enp0s8

Включить интерфейс можно командой

nmcli conn up enp0s3

Включать интерфейс при загрузке

Чтобы не включать сетевой интерфейс каждый раз вручную можно в настройках прописать ONBOOT=yes

Как вариант можно перейти в

И отредактировать с помощью vi файл ifcfg-ИМЯ_ИНТЕРФЕЙСА - например ifcfg-enp0s3

Либо под root использовать sed

Если команда выше вам не до конца понятна - изучите статью «Основы sed»

Проверить получилось ли изменить ONBOOT на yes можно командой

Подробную информацию о каждом сетевом интерфейсе можно получить выполнив nmcli connection show имя_интерфейса

nmcli connection show ens192

connection.id: ens192 connection.uuid: 5c2584c5-7d87-4826-ba2a-79713eb62a9a connection.stable-id: -- connection.type: 802-3-ethernet connection.interface-name: ens192 connection.autoconnect: yes connection.autoconnect-priority: 0 connection.autoconnect-retries: -1 (default) connection.multi-connect: 0 (default) connection.auth-retries: -1 connection.timestamp: 1618914913 connection.read-only: no connection.permissions: -- connection.zone: -- connection.master: -- connection.slave-type: -- connection.autoconnect-slaves: -1 (default) connection.secondaries: -- connection.gateway-ping-timeout: 0 connection.metered: unknown connection.lldp: default connection.mdns: -1 (default) connection.llmnr: -1 (default) 802-3-ethernet.port: -- 802-3-ethernet.speed: 0 802-3-ethernet.duplex: -- 802-3-ethernet.auto-negotiate: no 802-3-ethernet.mac-address: -- 802-3-ethernet.cloned-mac-address: -- 802-3-ethernet.generate-mac-address-mask:-- 802-3-ethernet.mac-address-blacklist: -- 802-3-ethernet.mtu: auto 802-3-ethernet.s390-subchannels: -- 802-3-ethernet.s390-nettype: -- 802-3-ethernet.s390-options: -- 802-3-ethernet.wake-on-lan: default 802-3-ethernet.wake-on-lan-password: -- ipv4.method: auto ipv4.dns: -- ipv4.dns-search: -- ipv4.dns-options: "" ipv4.dns-priority: 0 ipv4.addresses: -- ipv4.gateway: --

Установка статического IP

nmcli conn show

NAME UUID TYPE DEVICE enp0s3 64486a76-a4b0-4693-9110-205da942c9c5 ethernet enp0s3 enp0s8 fc26857f-4cb0-3756-a7fa-95ec246b3981 ethernet enp0s8

Настроим статический IP адрес для enp0s8

Настройки сети хранятся в директории

Отредактировать нужно файл ifcfg-enp0s8

Основные параметры:
TYPE - тип соединения, проводное (Ethernet), беспроводное(Wired) и т д;
BOOTPROTO - способ получения IP адреса, static, dhcp или none;
NAME - имя соединения;
DEVICE - имя сетевого интерфейса;
ONBOOT - необходимо ли запускать при старте системы;
IPADDR - IP адрес, который будет использован для этого компьютера;
GATEWAY - шлюз для доступа к интернету;
NETMASK - маска сети;
DNS1 - сервер для разрешения доменных имен DNS.

sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s8

Изменить IP

Быстро изменить IP можно с помощью ifconfig

Сперва нужно установить пакет содержащий ifconfig - по инструкции

Менять IP нужно командой

sudo ifconfig enp0s8 192.168.56.111

Вместо enp0s8 введите нужный интерфейс

Вместо 192.168.56.111 введите IP, который хотите установить

Если нужно поменять ещё и маску подсети - выполните

sudo ifconfig enp0s8 192.168.56.111 netmask 255.255.255.0

Изменить маску

Если нужно поменять только маску подсети - выполните

sudo ifconfig enp0s8 netmask 255.255.255.0

Добавить IP

Добавить IP на интерфейс можно командой

ip addr add 172.17.67.3/16 dev enp0s8

IP адрес добавлен динамически - то есть после перезагрузки он пропадёт

Удалить этот IP адрес можно командой

ip addr del 172.17.67.3/16 dev enp0s8

Сбросить IP

Если IP получен по DHCP можно освободиться от него выполнив

sudo dhcp -r enp0s8

Вместо enp0s8 введите имя нужного адаптера

Узнать Gateway

Чтобы узнать текущий IP адрес шлюза (gateway) выполните

default via 10.0.2.1 dev enp0s3 proto dhcp metric 100

IP адрес шлюза 10.0.2.1

Установка ifconfig

yum provides ifconfig

yum whatprovides ifconfig

ifconfig входит, например, в состав net-tools

sudo yum install net-tools

Открытые порты

Список открытых портов

Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port

Выдаст все порты, поэтому если нужно проверить какой-то определённый удобно применить grep

ss -tulpn | grep 1234

tcp LISTEN 0 128 [::]:1234 [::]:* users:(("andrei",pid=5226,fd=14))

Открыть порт

Чтобы открыть порт XXXX в firewall выполните

sudo firewall-cmd --add-port=XXXX/tcp --permanent
sudo firewall-cmd --reload

Подробности в статье Centos firewall

hostname

Шаг 1. Проверка текущего hostname

Чтобы получить информацию о хосте выполните

Нужная информация находится в первой строке

Static hostname: localhost.localdomain

Шаг 2. Смена hostname

Так как CentOS 7 поддреживает только Fully Qualified Domain Names (FQDNs), советую тщательно проверить hostname, который вы планируете использовать.

  • Строчные буквы от a до z
  • Цифры от 0 до 9
  • Точки и дефисы
  • Hostnames может быть от 2 до 63 символов
  • Hostnames должен начинаться и заканчиваться цифрой или буквой

hostnamectl set-hostname my.new-hostname.server

Подробности в статье hostname

NetworkManager

Проверить статус можно командой

systemctl status NetworkManager

network

Проверить статус можно командой

systemctl status network

● network.service - LSB: Bring up/down networking Loaded: loaded (/etc/rc.d/init.d/network; bad; vendor preset: disabled) Active: active (exited) since Tue 2021-04-20 12:57:04 EEST; 7min ago Docs: man:systemd-sysv-generator(8) Process: 13493 ExecStop=/etc/rc.d/init.d/network stop (code=exited, status=0/SUCCESS) Process: 13652 ExecStart=/etc/rc.d/init.d/network start (code=exited, status=0/SUCCESS) Nov 18 00:17:03 localhost.localdomain systemd[1]: Starting LSB: Bring up/down networking. Nov 18 00:17:03 localhost.localdomain network[13652]: Bringing up loopback interface: [ OK ] Nov 18 00:17:03 localhost.localdomain network[13652]: Bringing up interface ens192: Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/5) Nov 18 00:17:03 localhost.localdomain network[13652]: [ OK ] Nov 18 00:17:03 localhost.localdomain systemd[1]: Started LSB: Bring up/down networking.

Виртуальный интерфейс

Виртуальный интерфейс - это alias к существующему интерфейсу. Допустим у вас есть ens192

Поменяйте там что-то, например поставьте другой IP из той же подсети

systemctl restart network

Так как виртальный интерфейс может быть только внутри той же подсети, он не даст вам возможности слушать другую сейть.

Создать новый сетевой адаптер

Подробный разбор этого действия вы можете изучить в статье «Создать новый интерфейс»

Список адаптеров

Получить список адаптеров, в том числе отключенных.

DEVICE TYPE STATE CONNECTION wlp0s20f3 wifi connected SSH-office docker0 bridge connected docker0 p2p-dev-wlp0s20f3 wifi-p2p disconnected -- enp0s31f6 ethernet unavailable -- vboxnet0 ethernet unmanaged -- lo loopback unmanaged --

Инструкция применима к CentOS версий 7 и 8, CentOS mini (минимальная сборка), Fedora.

Базовая настройка сети

Смотрим все установленные сетевые адаптеры в системе:

В результате получаем что-то подобное:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:50:56:81:28:3c brd ff:ff:ff:ff:ff:ff
inet 192.168.156.22/22 brd 192.168.159.255 scope global ens32
valid_lft forever preferred_lft forever
3: ens34: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:50:56:81:3f:22 brd ff:ff:ff:ff:ff:ff
inet 10.243.254.68/26 brd 10.243.254.127 scope global ens34
valid_lft forever preferred_lft forever

* Из примера видно, что в моем CentOS есть 3 сетевых карты — lo (локальная петля), ens32 и ens34 — сетевые Ethernet адаптеры.

Если нужно настроить сеть для адаптера ens32, открываем на редактирование следующий конфигурационный файл:

И приводим его к следующему виду:

DEVICE=ens32
BOOTPROTO=static
IPADDR=192.168.0.155
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

. а также для CentOS 8 добавим:

Основные опции

Опция Описание Возможные значения
DEVICE Имя сетевого адаптера Должно совпадать с именем в системе. В данном примере ens32
BOOTPROTO способ назначения IP-адреса static: ручное назначение IP, dhcp: автоматическое получение IP
IPADDR IP-адрес адрес, соответствующий вашей сети
NETMASK Сетевая маска должна соответствовать вашей сети
GATEWAY Шлюз по умолчанию IP-адрес сетевого шлюза
DNS1 Основной DNS-сервер IP-адрес сервера имен
DNS2 Альтернативный DNS-сервер IP-адрес сервера имен
ONBOOT Способ запуска сетевого интерфейса yes: автоматически при старте сервера, no: запускать вручную командой
NM_CONTROLLED Указываем, должен ли интерфейс управляться с помощью NetworkManager yes: управляется NetworkManager, no: не может управляться NetworkManager

Чтобы настройки применились, перезапускаем сетевую службу.

systemctl restart network

б) для CentOS 8 вводим 2 команды:

systemctl restart NetworkManager

nmcli networking off; nmcli networking on

* в большей степени, это основное отличие версий 7 и 8. Чтобы команды смогли поменять настройки, для интерфейсов необходима настройка NM_CONTROLLED=yes.

Дополнительные опции (не обязательны для работы сети)

Настройка сети из консоли (командами)

Настройка из консоли будет работать только до перезагрузки системы. Ее удобно применять для временного конфигурирования или проведения тестов.

Назначение IP-адреса или добавление дополнительного к имеющемуся:

ip a add 192.168.0.156/24 dev ens32

* в данном примере к сетевому интерфейсу ens32 будет добавлен IP 192.168.0.156.

Изменение IP-адреса:

ip a change 192.168.0.157/24 dev ens32

* однако, по факту, команда отработает также, как add.

Удаление адреса:

ip a del 192.168.163.157/24 dev ens32

Добавление маршрута по умолчанию:

ip r add default via 192.168.0.1

Добавление статического маршрута:

ip r add 192.168.1.0/24 via 192.168.0.18

Удаление маршрутов:

ip r del default via 192.168.160.1

ip r del 192.168.1.0/24 via 192.168.0.18

Команда ifconfig

В новых версиях CentOS утилита ifconfig не установлена и при вводе одноименной команды можно увидеть ошибку «Команда не найдена». Необходимо либо воспользоваться командой ip (ip address), либо установить утилиту ifconfig.

yum install ifconfig

yum install net-tools

Настройка WiFi

Принцип настройки беспроводной сети на CentOS не сильно отличается от проводной.

Создаем конфигурационный файл со следующим содержимым:

ESSID="dmoskwifi"
MODE=Managed
KEY_MGMT=WPA-PSK
TYPE=Wireless
BOOTPROTO=none
NAME=dmoskwifi
ONBOOT=yes
IPADDR=192.168.1.50
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=77.88.8.8

* где dmoskwifi — название WiFi сети (SSID).

Несколько IP на одном сетевом адаптере

В зависимости от версии операционной системы, дополнительные адреса добавляются посредством:

  1. Псевдонимов — создание нового виртуального интерфейса с названием <имя интерфейса>:<номер>.
  2. Добавлением IPADDRx и NETMASKx в конфигурационном файле.

Рассмотрим оба варианта подробнее.

Создание псевдонимов (более ранние версии CentOS 7 и ниже)

Создаем новый конфигурационный файл для сетевого интерфейса:

DEVICE=ens32:1
BOOTPROTO=static
IPADDR=192.168.0.156
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

* где ens32 — имя физического интерфейса, :1 — виртуальный номер.

Перезапускаем сетевые службы.

Настройка конфигурационного файла (поздние версии CentOS 7 и выше)

Открываем конфигурационный файл для сетевого интерфейса, например:

DEVICE=ens32
BOOTPROTO=static
IPADDR=192.168.0.155
NETMASK=255.255.255.0
IPADDR1=192.168.0.156
NETMASK1=255.255.255.0
IPADDR2=192.168.0.157
NETMASK2=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

* где ens32 — имя физического интерфейса, дополнительные адреса задаются с помощью опций IPADDR1, IPADDR2, NETMASK1, NETMASK2.

Перезапускаем сетевые службы.

Для автоматического получения IP-адреса от сервера DHCP мы должны задать следующее значение для опции BOOTPROTO в конфигурационном файле:

* в наших примерах выше данный параметр имеет значение static.

Переопределение DNS с помощью dhclient.conf

Также мы можем переопределять настройки для DHCP с помощью конфигурационного файла. Например, если мы хотим, чтобы адреса DNS были заданы определенные, а не полученны от DHCP, открываем конфиг:

interface "enp0s3"
supersede domain-name-servers 8.8.8.8, 8.8.4.4;
>

* где enp0s3 — имя сетевого интерфейса, который будет получать адрес от сервера DHCP. 8.8.8.8, 8.8.4.4 — адреса, которые будут настоены на интерфейсе, независимо от того, какие предложит сервер DHCP.

Или мы можем использовать адреса от DHCP, но сделать приоритетными свои:

interface "enp0s3"
prepend domain-name-servers 127.0.0.1;
>

* в данном примере, мы зададим в качестве основного сервера DNS — 127.0.0.1.

Чтобы данный метод сработал в CentOS 8, необходимо открыть файл:

В раздел [main] добавить:

Переопределение DNS в NetworkManager (альтернативный способ)

Метод, описанный выше по переопределению DNS не подходит для NetworkManager без изменения настройки dhcp, так как адреса будут получены и обработаны с помощью встроенных методов. Выше, предоставлено решение в виде настройки dhcp=dhclient, однако мы рассмотрим альтернативный способ, на случай, если кому-то это пригодится.

В данной статье будет показано несколько методов настройки сетевых интерфейсов в CentOS 7, в частности будут рассмотрены методы присвоения статического ip-адреса интерфейсу. Просмотр сетевых интерфейсов В начале настройки необходимо просмотреть существующие в системе интерфейсы и то как они названы в системе. Выполняется это командой ip address или ip a Результатом команды будет выведен список всех […]

Настройка ip-адреса на сетевых интерфейсах в CentOS 7

В данной статье будет показано несколько методов настройки сетевых интерфейсов в CentOS 7, в частности будут рассмотрены методы присвоения статического ip-адреса интерфейсу.

Просмотр сетевых интерфейсов

В начале настройки необходимо просмотреть существующие в системе интерфейсы и то как они названы в системе. Выполняется это командой ip address или ip a

Результатом команды будет выведен список всех присутсвующих в системе сетевых интерфейсов, с их MAC-адресами и, если есть, назначенными ip-адресами.

Вывод команды ip a

Вывод команды ip a

Также имена интерфейсов можно узнать используя команду

Вывод команды nmci -p dev

Вывод команды nmci -p dev Команду nmcli con show предпочтительнее использовать если необходимо узнать также системный UUID интерфейса.

Вывод UUID сетевых интерфейсов

Вывод UUID сетевых интерфейсов И третий способ узнать имя и настройки интерфейса командой

ifconfig

, которая также выведет подробную информацию обо всех сетевых устройствах.

Результат команды ifconfig

Результат команды ifconfig Если установлен minimal образ Centos7, то команда ifconfig выдаст ошибку команда не найдена, это связано с тем что не установлен пакет утилит net-tools, в состав которого входит и утилита ifconfig. Установить его можно командой yum install net-tools

Далее можно перейти к непосредственной настройке сетевых интерфейсов. Существует несколько вариантов настройки.


Вариант 1. Настройка через конфигурационный файл

Конфигурационные файлы сетевых интерфейсов хранятся в директории /etc/sysconfig/network-scripts, каждый файл шмеет следующую структуру ifcfg-имя_интерфейса, например, ifcfg-enp0s3. Открыть его можно любым редактором, например, vim:

Интересующие параметры в данном файле следующие:

  • BOOTPROTO — тип настройки интерфейса, если выставлен dhcp, то необходимо поменять на static
  • DEFROUTE — флаг, указывающий на включать или нет маршрут по-умолчанию, подвязанный к данному интерфейсу при включении интерфейса (по-умолчанию выставлен yes)
  • ONBOOT — флаг, указывающий включать ли интерфейс при загрузке, рекомендуется установить значение yes
  • IPADDR — указывается статический адрес интерфейса
  • PREFIX — маска подсети, указывается в битовом формате, например, 24
  • GATEWAY — адрес шлюза сети
  • DNS1 — адрес DNS-сервера

Пример файла конфигурации сетевого интерфейса

Пример файла конфигурации сетевого интерфейса

После сохранения настроек необходимо перезапустить сетевые интерфейсы командой

Вариант 2: Настройка с помощью утилиты nmtui

Утилита запускается командой

nmtui.

Представляет собой редактор параметров сети, т. е. утилита взаимодействует с приложением NetworkManager. После запуска необходимо выбрать параметр Изменить соединение

Утилита nmtui

Утилита nmtui

Далее необходимо выбрать из списка интересующий интерфейс и параметр Изменить

Переходы по пунктам меню производятся клавишей TAB

Выбор интерфейса в nmtui

Выбор интерфейса в nmtui

Далее необходимо развернуть раздел Конфигурация IPv4, выполняется параметром показать рядом с пунктом, и внести следующие изменения:

  • Конфигурация IPv4 — выбрать значение Вручную
  • Адреса — указать необходимй адрес интерфейса
  • Шлюз — указать адрес шлюза
  • Серверы DNS — внести адреса DNS-серверов

По завершению нажать на Ок

Параметры сетевого интерфейса в nmtui

Параметры сетевого интерфейса в nmtui Если при попытке запуска nmtui выдается ошибка Команда не найдена, то необходимо установить утилиту командой yum install NetworkManager-tui

Вариант 3: Настройка с использованием утилиты nmcli

Для присвоения статического ip-адреса сетевому интерфейсу с помощью утилиты nmcli необходимо выполнить команду следующего вида:

nmcli con add type ethernet con-name itcare-lab ifname <имя_интерфейса> ip4 <ip_адрес/маска_подсети> gw4 <адрес_шлюза>

Присвоение статического ip утилитой nmcli

Присвоение статического ip утилитой nmcli

Также можно указать и DNS-сервера с помощью утилиты nmcli

nmcli con mod itcare-lab ipv4.dns

Настройка DNS через nmcli

Настройка DNS через nmcli Следует обратить внимание что адреса DNS-серверов указываются через пробел.

На этом краткий мануал по настройке статического ip-адреса в CentOS7 завершен

Читайте также: