Найти подключенное состояние сетевого кабеля в Linux
В этом кратком руководстве мы узнаем, как определить, подключен ли сетевой кабель к сетевой интерфейсной карте. Вы можете напрямую пойти и проверить физический сетевой слот на задней панели вашей системы, чтобы узнать, подключен ли кабель или нет, но это не обязательно. Мы можем легко и быстро определить состояние подключения сетевого кабеля в Linux, не вставая с рабочего стола.
Найдите состояние подключения сетевого кабеля в Linux
Может быть множество способов определить состояние подключения сетевого кабеля. Здесь я перечислил три простых способа проверить, подключен ли кабель или нет.
Способ 1
Во-первых, вам нужно знать имя вашей сетевой карты, чтобы определить состояние подключения. Узнать имя вашей сетевой карты можно с помощью команд "ifconfig"
или "ip addr"
.
Чтобы просмотреть список доступных сетевых интерфейсов, обратитесь к следующему руководству.
- Как найти доступные сетевые интерфейсы в Linux
Найдя сетевой интерфейс, вы можете узнать состояние подключения сетевого кабеля в Linux, просто запустив:
cat /sys/class/net/enp5s0/carrier
Замените "enp5s0
" в приведенной выше команде именем вашей сетевой карты.
Пример вывода:
1
Если вы получили результат "1" (номер один), это означает, что сетевой кабель подключен к сетевой карте.
Вы также можете проверить, подключен ли кабель к сетевой карте, используя следующую команду:
cat /sys/class/net/enp5s0/operstate
Пример вывода:
up
Найдите подключенное состояние сетевого кабеля
Как и в приведенных выше выводах, сетевой кабель подключен к адаптеру локальной сети. Здесь "enp5s0"
— имя моей сетевой карты.
Не только проводная сетевая карта, мы также можем узнать состояние беспроводной сетевой карты.
Для этого запустите:
cat /sys/class/net/wlp9s0/carrier
Пример вывода:
1
Или,
cat /sys/class/net/wlp9s0/operstate
Пример вывода:
up
Узнать состояние беспроводной сетевой карты
Теперь просто отключите сетевой кабель и проверьте, какой будет выход.
cat /sys/class/net/enp5s0/carrier
Пример вывода:
0
Или,
cat /sys/class/net/enp5s0/operstate
Пример вывода:
down
Видеть? Мы получили результаты "0" (ноль) и "down", что означает, что кабель не подключен. Не имеет значения, настроили ли вы IP-адрес сетевой карты или нет. Вы можете легко узнать, подключен кабель или нет, используя приведенные выше команды.
Способ 2 — использование ethtool
Если приведенные выше команды не помогают, вам поможет другой инструмент под названием "ethtool".
ethtool используется для запроса и управления драйверами сетевых устройств и настройками оборудования, особенно для проводных устройств Ethernet.
Запустите следующую команду, чтобы узнать состояние подключения сетевого кабеля:
sudo ethtool enp5s0
Пример вывода:
Settings for enp5s0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Link partner advertised pause frame use: Transmit-only
Link partner advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000033 (51)
drv probe ifdown ifup
Link detected: yes
Найдите состояние подключения сетевого кабеля с помощью ethtool
Чтобы узнать состояние беспроводной сетевой карты:
sudo ethtool wlp9s0
Пример вывода:
Settings for wlp9s0:
Link detected: yes
Проверьте состояние беспроводной сетевой карты
Давайте отключим кабель и посмотрим, что произойдет.
sudo ethtool enp5s0
Пример вывода:
Settings for enp5s0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Link partner advertised pause frame use: Transmit-only
Link partner advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000033 (51)
drv probe ifdown ifup
Link detected: no
Просмотр состояния подключения сетевой карты в Linux
Загрузите бесплатную электронную книгу – Бесплатная электронная книга: «Администраторы сетей и компьютерных систем – профессиональные перспективы»
Способ 3 — использование команды ip
Еще один хороший метод, предложенный одним из наших читателей, — использование команды "ip"
.
ip a
Пример вывода будет:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
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
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp5s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 24:b6:fd:37:8b:29 brd ff:ff:ff:ff:ff:ff
3: wlp9s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether c0:18:85:50:47:4f brd ff:ff:ff:ff:ff:ff
inet 192.168.43.192/24 brd 192.168.43.255 scope global wlp9s0
valid_lft forever preferred_lft forever
inet6 fe80::c218:85ff:fe50:474f/64 scope link
valid_lft forever preferred_lft forever
Это все на данный момент. Есть ли у вас какие-нибудь другие методы определения состояния подключения сетевого кабеля? Не стесняйтесь, дайте нам знать в разделе комментариев ниже. Я проверю и обновлю этот список соответствующим образом.
Связанное чтение:
- Как настроить статический IP-адрес в Linux и Unix
- Как настроить IP-адрес в Ubuntu 18.04 LTS
- Как настроить статический и динамический IP-адрес в Arch Linux
- Как назначить несколько IP-адресов одной сетевой карте в Linux