GNU/Linux >> Znalost Linux >  >> Linux

Linux ip příkaz s příklady

ip command je výkonný nástroj pro konfiguraci síťových rozhraní, který by měl znát každý správce systému Linux. Používá se ke zvýšení nebo snížení rozhraní, přidělování a odstraňování adres a tras, správě mezipaměti ARP a mnohem více.

Tento článek vysvětluje, jak používat příkaz ip prostřednictvím praktických příkladů a podrobných vysvětlení nejběžnějších možností.

Jak používat příkaz ip #

ip utility je součástí balíčku iproute2, který se instaluje na všechny moderní distribuce Linuxu.

Syntaxe pro ip příkaz je následující:

ip [ OPTIONS ] OBJECT { COMMAND | help }
 

OBJECT je typ objektu, který chcete spravovat. Nejčastěji používané objekty (nebo dílčí příkazy) jsou:

  • link (l ) – Zobrazení a úprava síťových rozhraní.
  • address (a ) – Zobrazení a úprava IP adres.
  • route (r ) – Zobrazení a změna směrovací tabulky.
  • neigh (n ) – Zobrazení a manipulace s objekty sousedů (tabulka ARP).

Objekt může být zapsán v plné nebo zkrácené (zkrácené) podobě. Chcete-li zobrazit seznam příkazů a argumentů pro každý objekt, zadejte ip OBJECT help .

Při konfiguraci síťových rozhraní musíte příkazy spustit jako uživatel root nebo uživatel s oprávněními sudoprivileges. V opačném případě příkaz vypíše RTNETLINK answers: Operation not permitted .

Konfigurace nastavené pomocí ip příkaz nejsou trvalé. Po restartu systému jsou všechny změny ztraceny. Aby byly změny trvalé, musíte upravit konfigurační soubory specifické pro distribuci nebo přidat příkazy do spouštěcího skriptu.

Zobrazení a úprava IP adres #

Při práci s addr objekt mají příkazy následující tvar:

ip addr [ COMMAND ] ADDRESS dev IFNAME
 

Nejčastěji používané PŘÍKAZY addr objektem jsou:show , add a del .

Zobrazit informace o všech IP adresách #

Chcete-li zobrazit seznam všech síťových rozhraní a související IP adresy, zadejte následující příkaz:

ip addr show 

Výstup bude vypadat nějak takto:

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
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
    inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0
       valid_lft 2900sec preferred_lft 2900sec
    inet6 fe80::5054:ff:fe8c:6244/64 scope link 
       valid_lft forever preferred_lft forever
 

Stejný výstup získáte, pokud vynecháte show příkaz a zadejte:ip addr .

Pokud chcete zobrazit pouze IPv4 nebo IPv6 IP adresy, použijte ip -4 addr nebo ip -6 addr .

Zobrazení informací o jediném síťovém rozhraní #

Chcete-li získat informace o konkrétním síťovém rozhraní, použijte ip addr show dev následovaný názvem zařízení. Například dotaz eth0 , napsali byste:

ip addr show dev eth0 

Přiřazení IP adres k rozhraní #

Chcete-li rozhraní přiřadit adresu IP, použijte následující syntaxi:

ip addr add ADDRESS dev IFNAME
 

Kde IFNAME je název rozhraní a ADDRESS je IP adresa, kterou chcete přiřadit rozhraní.

Chcete-li přidat adresu 192.168.121.45 s maskou sítě 24 do zařízení eth0 , napsali byste:

sudo ip address add 192.168.121.45/24 dev eth0 

V případě úspěchu příkaz neukáže žádný výstup. Pokud rozhraní neexistuje, zobrazí se Cannot find device "eth0" .

Přiřadit více IP adres ke stejnému rozhraní #

S ip , můžete stejnému rozhraní přiřadit více adres. Například:

sudo ip address add 192.168.121.241/24 dev eth0 sudo ip address add 192.168.121.45/24 dev eth0 

Pro potvrzení, že IP adresy jsou přiřazeny typu ip -4 addr show dev eth0 nebo ip -4 a show dev eth0 :

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0
       valid_lft 3515sec preferred_lft 3515sec
    inet 192.168.121.45/24 scope global secondary eth0
       valid_lft forever preferred_lft forever
 

Odebrat / smazat IP adresu z rozhraní #

Syntaxe pro odstranění adresy IP z rozhraní je následující:

ip addr dev ADDRESS dev IFNAME
 

IFNAME je název rozhraní a ADDRESS je adresa IP, kterou chcete z rozhraní odstranit.

Chcete-li odstranit adresu 192.168.121.45/24 ze zařízení typu eth0:

sudo ip address del 192.168.121.45/24 dev eth0 

Zobrazení a úprava síťových rozhraní #

Pro správu a zobrazení stavu síťových rozhraní použijte link objekt.

Při práci s link objektů, nejčastěji používané příkazy jsou:show , set , add a del .

Zobrazit informace o síťových rozhraních #

Chcete-li zobrazit seznam všech síťových rozhraní, zadejte následující příkaz:

ip link show 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
 

Na rozdíl od ip addr show , ip link show nevytiskne informace o IP adresách spojených se zařízením.

Chcete-li získat informace o konkrétním síťovém rozhraní, použijte ip link show dev následovaný názvem zařízení. Například dotaz eth0 byste napsali:

ip link show dev eth0 
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
 

Změnit stav rozhraní NAHORU/DOLŮ #

Chcete-li rozhraní posunout nahoru nebo dolů, použijte ip link set dev následovaný názvem zařízení a požadovaným stavem:

ip link set dev {DEVICE} {up|down}
 

Chcete-li například přivést rozhraní eth0 online, zadejte:

ip link set eth0 up 

A převést, pokud je offline

ip link set eth0 down 

Zobrazení a úprava směrovací tabulky #

Chcete-li přiřadit, odebrat a zobrazit směrovací tabulku jádra, použijte route objekt. Nejčastěji používané příkazy při práci s objekty tras jsou:list , add a del .

Zobrazit směrovací tabulku #

Chcete-li získat seznam položek trasy jádra, použijte jeden z následujících příkazů:

ip route
ip route list
ip route list SELECTOR
 

Při použití bez SELECTOR příkaz vypíše všechny položky cesty v jádře:

ip route list 
default via 192.168.121.1 dev eth0 proto dhcp src 192.168.121.241 metric 100 192.168.121.0/24 dev eth0 proto kernel scope link src 192.168.121.241 192.168.121.1 dev eth0 proto dhcp scope link src 192.168.121.241 metric 100

Chcete-li zobrazit pouze směrování pro konkrétní síť, například 172.17.0.0/16 byste napsali:

ip r list 172.17.0.0/16 
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 
 

Přidat novou trasu #

Chcete-li přidat nový záznam do směrovací tabulky, použijte route add příkaz následovaný názvem sítě nebo zařízení.

Přidat trasu na 192.168.121.0/24 přes bránu na 192.168.121.1

ip route add 192.168.121.0/24 via 192.168.121.1 

Přidejte trasu na 192.168.121.0/24, která je dostupná na zařízení eth0.

ip route add 192.168.121.0/24 dev eth0 

Chcete-li přidat výchozí trasu, použijte klíčové slovo default . Následující příkaz přidá výchozí trasu přes místní bránu 192.168.121.1 které jsou dostupné na zařízení eth0 .

ip route add default via 192.168.121.1 dev eth0 

Smazat trasu #

Chcete-li odstranit položku ze směrovací tabulky, použijte route add příkaz. Syntaxe pro odstranění trasy je stejná jako při přidávání.

Následující příkaz odstraní výchozí trasu:

ip route del default 

Smazat trasu pro 192.168.121.0/24 přes bránu na 192.168.121.1

ip route add 192.168.121.0/24 via 192.168.121.1 

Závěr č.

Nyní byste měli dobře rozumět tomu, jak používat Linux ip příkaz. Další informace o druhém ip možnosti, navštivte stránku příkazu ip nebo zadejte man ip ve vašem terminálu.

Pokud máte nějaké dotazy nebo zpětnou vazbu, neváhejte zanechat komentář.


Linux
  1. Linux Tee Command s příklady

  2. Příkaz linuxové hlavy s příklady

  3. JQ Command v Linuxu s příklady

  1. wc Linux Command s příklady

  2. Linux řazení příkazů s příklady

  3. Echo Command v Linuxu (s příklady)

  1. man Command v Linuxu s příklady

  2. Příkaz AWK v Linuxu s příklady

  3. Curl Command v Linuxu s příklady