Команда ip

Thank you for reading this post, don't forget to subscribe!

Ути­ли­та ip явля­ет­ся частью паке­та iproute2, кото­рый уста­нав­ли­ва­ет­ся во всех совре­мен­ных дис­три­бу­ти­вах Linux.

Син­так­сис коман­ды ip следующий:

 

OBJECT – это тип объ­ек­та, кото­рым вы хоти­те управ­лять. Наи­бо­лее часто исполь­зу­е­мые объ­ек­ты (или подкоманды):

  • link( l) – Отоб­ра­же­ние и изме­не­ние сете­вых интерфейсов.
  • address( a) – Отоб­ра­же­ние и изме­не­ние IP-адресов.
  • route( r) – Пока­зать и изме­нить таб­ли­цу маршрутизации.
  • neigh( n) – Отоб­ра­жать и мани­пу­ли­ро­вать сосед­ни­ми объ­ек­та­ми (таб­ли­ца ARP).

Объ­ект может быть напи­сан в пол­ной или сокра­щен­ной (крат­кой) фор­ме. Для отоб­ра­же­ния спис­ка команд и аргу­мен­тов для каж­до­го типа объ­ек­та ip OBJECT help.

При настрой­ке сете­вых интер­фей­сов вы долж­ны запус­кать коман­ды как root или поль­зо­ва­тель с при­ви­ле­ги­я­ми sudo, в про­тив­ном слу­чае коман­да выве­дет RTNETLINK answers: Operation not permitted.

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

 

При рабо­те с объ­ек­том коман­ды addr при­ни­ма­ют сле­ду­ю­щую форму:

 

Наи­бо­лее часто исполь­зу­е­мые коман­ды объ­ек­та addr – это show, add и del.

 

Для отоб­ра­же­ния спис­ка всех сете­вых интер­фей­сов и свя­зан­но­го с ним IP-адре­са вве­ди­те сле­ду­ю­щую команду:

 

Вывод будет выгля­деть при­мер­но так:

 

Когда коман­да show опу­ще­на, все устрой­ства пере­чис­ле­ны. Вы полу­чи­те тот же вывод, если вы набе­ре­те ip addr.

Если вы хоти­те отоб­ра­жать толь­ко IP-адре­са IPv4 или IPv6, исполь­зуй­те ip -4 addr или ip -6 addr.

 

Для полу­че­ния инфор­ма­ции о кон­крет­ном сете­вом интер­фей­се исполь­зуй­те имя устрой­ства ip addr show dev. Напри­мер, что­бы запро­сить вас eth0, введите:

Что­бы назна­чить IP-адрес интер­фей­су, исполь­зуй­те сле­ду­ю­щий синтаксис:

 

Где IFNAME – это имя интер­фей­са, а ADDRESS – это IP-адрес, кото­рый вы хоти­те назна­чить интерфейсу.

Что­бы доба­вить адрес 192.168.101.12 с сете­вой мас­кой 24 на устрой­ство eth0, введите:

 

В слу­чае успе­ха коман­да не будет отоб­ра­жать ника­ких выход­ных дан­ных. Если интер­фейс не суще­ству­ет, вы полу­чи­те Cannot find device “eth0”.