Читатели като вас помагат в подкрепа на MUO. Когато правите покупка чрез връзки на нашия сайт, ние може да спечелим комисионна за партньор. Прочетете още.

Най-фундаменталната част от администрирането и отстраняването на неизправности в Linux е да се провери IP конфигурацията на системата, за да се уверите, че системата има валиден IP и е достъпна в локалната мрежа.

Командата ip в Linux е мощен инструмент, който не само показва текущия IP адрес на системата, но също така ви позволява да преглеждате и управлявате текущата конфигурация на мрежови интерфейси, IP адреси, маршрути и ARP маси.

Нека да разгледаме някои от често срещаните случаи на използване на командата ip в Linux.

Намерете IP адреса на Linux

Да се намерете IP адреса на вашата Linux система, използвайте командата ip, последвана от адрес, адрес, или а опция:

IP адрес

Това ще покаже конфигурацията на всички мрежови интерфейси, включително техните IP адреси.

В следния пример можете да видите, че системата има три мрежови интерфейса: ето (loopback адрес), ens33, и ens37. Резултатът включва следната информация:

instagram viewer
  • Информация от слой 1, като възможност за интерфейс и състояние на свързаност на физическия слой, MTU, работното състояние на интерфейса (напр. НАГОРЕ или НАДОЛУ) и дължина на опашката за предаване (qlen).
  • Информация от слой 2 като MAC адреса на интерфейса.
  • Информацията от слой 3 включва IP адреса и неговия тип (динамично IP адресиране или статично IP адресиране).

За да покажете кратка информация за мрежовите интерфейси, използвайте командата ip с --накратко опция, както следва:

ip -- кратко адресно шоу

За да покажете само информация за IPv4 адрес, използвайте следната команда:

ip -4 адрес

За да разберете информацията за IP адреса на конкретен мрежов интерфейс, използвайте следния синтаксис:

IP адрес шоу dev [интерфейс]

Например, за да видите IP адреса на мрежов интерфейс ens33, командата ще бъде:

IP адрес шоу dev ens33

Преглед и промяна на MAC адреса

С помощта на командата ip можете също да видите и промените MAC адреса на вашата система.

Да се вижте MAC адреса на вашата Linux система, използвайте следната команда:

ip --кратко показване на връзката

За да видите MAC адреса на определен интерфейс, използвайте:

ip --brief връзка шоу dev [интерфейс]

Да се променете MAC адреса, първо свалете интерфейса:

sudo ip връзка комплект dev [интерфейс] надолу

След това използвайте следната команда, за да промените MAC адреса на вашия интерфейс:

sudo ip връзка комплект dev [интерфейс] адрес [нов-mac-адрес]

След това изведете интерфейса:

sudo ip връзка комплект dev [интерфейс] нагоре

Преглед на статистиката на мрежовия интерфейс

С помощта на командата ip можете също да видите статистиката на мрежовия интерфейс. Използвайте следната ip команда, за да видите статистиката за всички мрежови интерфейси на вашата система:

ip -s връзка

Резултатът включва статистика като предадени и получени байтове/пакети, грешки, изпуснати пакети, мултикаст и др. За да покажете статистика за определен интерфейс, използвайте следния синтаксис:

ip -s връзка шоу dev [интерфейс]

За да изведете интерфейс, използвайте следната ip команда:

sudo ip връзка комплект [интерфейс] нагоре

За да свалите интерфейса, изпълнете:

sudo ip връзка комплект [интерфейс] надолу

Можете също така да промените MTU (максимална предавателна единица) на интерфейс, като използвате следната команда:

sudo ip връзка комплект mtu [номер] dev [интерфейс]

Например, за да зададете MTU на мрежов интерфейс ens33 да се 8000, командата ще бъде:

sudo ip връзка комплект mtu 8000 dev ens33

Добавяне/премахване на IP адрес в Linux

За да добавите IP адрес към мрежов интерфейс, използвайте следния синтаксис:

ipадресдобавете[IP адрес]разработка[интерфейс]

За да добавите IP адрес 192.168.42.140/24 към мрежов интерфейс ens33, командата ще бъде:

ip адрес добави 192.168.42.140/24 dev ens33

Използвайте следния команден синтаксис, за да премахнете IP адреса от интерфейс:

ipадресдел[IP адрес]разработка[интерфейс]

За да премахнете IP адреса 192.168.42.140/24 от интерфейс ens33, командата ще бъде:

ip адрес дел192.168.42.140/24 dev ens33

Вижте таблицата за маршрутизиране на Linux

Командата ip route се използва за преглед и промяна на маршрутите в Linux система. За да покажете таблицата за маршрутизиране на вашата система, използвайте командата ip route без опция:

ip маршрут

Всеки ред в изхода представлява конфигуриран маршрут. Маршрутът се състои от мрежов адрес на дестинация, следващ хоп (т.е. IP адресът на рутера), интерфейс, през който пакетът ще бъде изпратен и метриката (стойност, използвана за определяне на предпочитания маршрут, когато има множество маршрути, достъпни за дестинация). В този случай се предпочита маршрутът с по-ниска метрика.

В примера по-горе първите два записа представляват маршрута по подразбиране, който се използва, когато не е наличен друг маршрут за адреса на дестинацията. 192.168.42.2 и 192.168.10.1 са IP адресите на рутера. Разработчикът ens33 и ens37 посочете интерфейса, който ще се използва за изпращане на пакетите към рутера. The прото dhcp полетата показват, че маршрутът по подразбиране е научен от DHCP.

Вторият запис представлява адреса на APIPA (автоматично частно IP адресиране) 169.254.0.0/16. Когато хост не успее да получи IP адрес от DHCP сървър, той си присвоява произволен IP адрес от тази мрежа. Позволява им да комуникират с други хостове в подмрежата, които също не са успели да получат IP адреса.

Третият и четвъртият запис показват мрежовите адреси на локалните мрежи, към които е свързана системата. The 192.168.10.0 е мрежата, която интерфейсът ens37 е прикрепен към докато на 192.168.42.0 е мрежата ens33 е прикрепен към.

The src полето показва IP адреса на интерфейса, използван като адрес на източника при изпращане на пакети през този маршрут.

Променете таблицата за маршрутизиране с помощта на ip

За да добавите ръчно маршрут, използвайте командата ip route, последвана от мрежовия адрес на дестинацията и IP на шлюза:

sudoipмаршрутдобавете[идентификатор на мрежа]чрез[gateway-ip]

Например, за да добавите маршрут, който изпраща целия трафик, предназначен за 192.168.20.0 мрежа към шлюза на 192.168.10.16, ще използвате следната команда:

sudo ip route добави 192.168.20.0/24 през 192.168.10.16

Използвайте следната команда, за да добавите маршрут по подразбиране:

sudo ip route add по подразбиране чрез [ip-адрес] dev [интерфейс]

Например, за да добавите маршрута по подразбиране, който насочва трафика към рутера на 192.168.10.1 през ens33, командата ще бъде:

sudoipмаршрутдобаветепо подразбиранечрез 192.168.10.1разработкаens33
ip маршрут получавам [IP адрес]

За да изтриете запис в таблицата за маршрутизиране, използвайте следния синтаксис:

sudoipмаршрутИзтрий[мрежови адрес]чрез[gateway-ip]

Можете също така да видите маршрута, който адресът ще измине, като използвате следния синтаксис:

ip маршрут получавам [IP адрес]

Управление на съседна таблица на Linux

Можете да използвате ip цвиля команда в Linux за преглед и модифициране на съседната таблица, известна още като ARP таблица. За да видите текущите записи в съседната таблица, използвайте следната команда:

ip цвиля шоу

За да добавите нов запис в съседната таблица, използвайте следния синтаксис:

sudoipцвилядобавете[IP адрес]lladdr[Мак адрес]разработка[интерфейс]

За да премахнете запис от съседната таблица, използвайте следния синтаксис:

sudoipцвилядел[IP адрес]разработка[интерфейс]

Добавете цвят към изхода на командата ip

За да направите изхода по-лесен и по-бърз за разбиране, можете да добавите цвят към изхода на командата ip, като използвате -° С опция:

ip -c a

Управление на мрежи и IP адреси в Linux

Командата ip в Linux е полезен инструмент за администриране и отстраняване на проблеми с мрежовите връзки. От преглед на мрежовите интерфейси и модифициране на свойствата на връзката до намиране на IP адреси и управление на маршрути, командата ip ви позволява да изпълнявате няколко задачи за системно администриране чрез командния ред.