Sieci w Linuksie/iproute2/ip/neighbour

Polecenie ip neighbour służy do zarządzania i wyświetlania tablicy sąsiedztwa (powiązań pomiędzy adresami MAC Ethernet a adresami IP, itp.). Składnia polecenia wyświetlona przez polecenie `ip neighbour help` wygląda następująco:

Składnia polecenia

edytuj
Usage: ip neigh { add | del | change | replace } { ADDR [ lladdr LLADDR ]
          [ nud { permanent | noarp | stale | reachable } ]
          | proxy ADDR } [ dev DEV ]
       ip neigh {show|flush} [ to PREFIX ] [ dev DEV ] [ nud STATE ]

Opis poleceń i ich opcji

edytuj

ip neighbour add

edytuj

Polecenie to służy do dodawania nowego wpisu w tablicy sąsiedztwa. Przyjmuje następujące argumenty:

ADDR - adres IP (IPv6), dla którego wpis ma zostać dodany
lladdr LLADDR- adres MAC, który ma zostać dodany
nud { permanent | noarp | stale | reachable} - stan NUD (ang. Neighbour Unreachability Detection, który ma zostać nadany wpisowi. Możliwe wartości stanów NUD:
permanent - wpis jest poprawny na zawsze, nie ulega przeterminowaniu, może zostać tylko usunięty administracyjnie (np. za pomocą polecenia `ip neigh del ...`).
noarp - wpis jest poprawny, nie będzie weryfikowana jego poprawność, jednak zostanie skasowany automatycznie, jeżeli jego czas życia wygaśnie.
reacheable - wpis jest poprawny do czasu aż czas życia wygaśnie.
stale - wpis jest poprawny, ale podejrzany
failed - wpis nie jest poprawny
delay -
proxy ADDR - adres proxy
dev DEV - interfejs, przez który osiągalny jest dany adres.

ip neighbour del

edytuj

Polecenie to służy do usuwania pojedynczych wpisów w tablicy sąsiedztwa. Usunięty wpis ma tymczasowo ustawiany stan NUD na failed. Polecenie to przyjmuje te same argumenty co `ip neigh add` w celu specyfikacji wpisu do usunięcia.

ip neighbour change

edytuj

Polecenie to służy do zmiany istniejącego wpisu w tablicy sąsiedztwa. Używa tej samej składni co `ip neigh add`.

ip neighbour replace

edytuj

Polecenie to służy do zmiany istniejącego wpisu w tablicy sąsiedztwa, lub dodania nowego jeżeli wpis nie istnieje. Używa tej samej składni co `ip neigh add`.

ip neighbour show

edytuj

Polecenie to służy do wyświetlania zawartości tablicy sąsiedztwa. Przyjmuje następujące opcje:

to PREFIX - wyświetla tylko wpisy pasujące do podanego prefiksu (w formacie CIDR).
dev DEV - wyświetla tylko wpisy dotyczące danego interfejsu sieciowego.
nud STATE - wyświetla tylko wpisy znajdujące się w danym stanie NUD.
Przykłady
ip neigh show to 192.168.0.0/24

Powyższe polecenie wyświetli tablicę sąsiedztwa dla hostów z podsieci 192.168.0.0/24

ip neigh show

Powyższe polecenie wyświetli wynik podobny do poniższego

192.168.130.182 dev br0 lladdr 00:17:27:8d:6c:30 STALE
192.168.130.214 dev br0 lladdr 00:01:92:9c:8d:e4 REACHABLE
192.168.110.7 dev vlan257 lladdr 00:17:f2:93:59:b5 REACHABLE
192.168.130.12 dev br0 lladdr 00:17:cg:92:32:da REACHABLE
192.168.130.39 dev br0 lladdr 00:aa:bb:bc:58:9c REACHABLE
192.168.139.202 dev br0 lladdr 00:a4:5a:97:3c:0e DELAY

ip neighbour flush

edytuj

Polecenie to służy to czyszczenia tablicy sąsiedztwa (ang. flush - spłukiwać). Przyjmuje te same parametry co polecenie show z tą różnicą, że domyślnie nie kasuje wpisów typu permanent i arp oraz wymaga podania conajmniej 1 argumentu. Dodatkowa opcja -statistics pozwala na wyświetlenie informacji na temat procesu czyszczenia tablicy (podana raz wyświetla liczbę usuniętych wpisów, podana więcej razy wypisuje również usuwane wpisy).

Przykłady
ip neigh flush dev eth0

Powyższe polecenie kasuje wszystkie wpisy w tablicy sąsiedztwa dotyczące interfejsu eth0.