24 Hyödyllisiä "IP"-komentoja verkkoliitäntöjen määrittämiseen


Lyhyesti: Tässä oppaassa käsitellään käytännön esimerkkejä ip-komennosta. Tämän oppaan loppuun mennessä käyttäjät voivat suorittaa verkkotehtäviä tehokkaasti Linuxissa komentorivin käyttöliittymästä.

Järjestelmänvalvojien on usein suoritettava verkkotehtäviä Linux-palvelimilla. Markkinoilla on useita graafisia ja komentorivityökaluja. Useimmat Linux-käyttäjät käyttävät kuitenkin mieluummin ip-komentoa sen yksinkertaisuuden ja monipuolisten toimintojen vuoksi.

ip-komento on uusi verkon komentorivityökalu, jota käytetään IP-osoitteen määrittämiseen verkkoliittymälle tai hyödyllisten verkkomuuttujien määrittämiseen/päivittämiseen Linux-järjestelmässä.

Se on osa iproute2-pakettia ja tarjoaa useita verkonhallintatehtäviä, kuten verkkorajapintojen avaamisen tai alaspäin, IP-osoitteiden ja reittien määrittämisen ja poistamisen, ARP-välimuistin hallinnan ja paljon muuta.

ip-komento on paljon samanlainen kuin vanha ifconfig-komento, mutta se on huomattavasti tehokkaampi, ja siihen on lisätty enemmän toimintoja ja ominaisuuksia.

Ifconfig-komento on vanhentunut ja korvattu ip-komennolla kaikissa nykyaikaisissa Linux-jakeluissa. ifconfig-komento on kuitenkin edelleen toimiva ja saatavilla useimmille Linux-jakeluille.

Huomaa: Ota määritystiedostosta varmuuskopio ennen muutosten tekemistä.

1. Määritä pysyvästi staattinen IP-osoite Linuxissa

Jos haluat määrittää pysyvästi staattisen IP-osoitteen Linuxissa, sinun on päivitettävä tai muokattava verkon määritystiedosto määrittääksesi järjestelmälle staattisen IP-osoitteen. Sinun on oltava pääkäyttäjä, jolla on su (switch user)-komento päätteestä tai komentokehotteesta.

Aseta staattinen IP-osoite RHEL Systemsissä

Avaa ja muokkaa verkkoasetustiedostoja (eth0 tai eth1) suosikkitekstieditorillasi. Esimerkiksi IP-osoitteen määrittäminen eth0-rajapinnalle seuraavasti RHEL-pohjaisissa jakeluissa.

vi /etc/sysconfig/network-scripts/ifcfg-eth0     [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]

Aseta staattinen IP-osoite Debian Systemsissä

Pysyvän staattisen IP-osoitteen määrittämistä varten sinun on muutettava verkkoliitännän määritystiedostoa /etc/network/interfaces, jotta voit tehdä pysyviä muutoksia Debian-pohjaisille jakeluille alla kuvatulla tavalla.

sudo nano /etc/network/interfaces     [On Debian, Ubuntu and Mint]

Käynnistä seuraavaksi verkkopalvelut uudelleen syötettyäsi kaikki tiedot seuraavalla komennolla.

sudo systemctl restart networking

2. Määritä väliaikaisesti staattinen IP-osoite Linuxissa

Tilapäisiä verkkomäärityksiä varten voit käyttää ip-komentoa määrittääksesi IP-osoitteen tietylle rajapinnalle (eth2) lennossa.

ip addr add 172.19.1.10/24 dev eth2
OR
sudo ip addr add 172.19.1.10/24 dev eth2

Huomaa: Valitettavasti kaikki nämä asetukset menetetään järjestelmän uudelleenkäynnistyksen jälkeen.

3. Kaikkien verkkoliitäntöjen näyttäminen

ip-komennossa linkkiobjekti edustaa verkkoliitäntää. Voimme käyttää show-komentoa sen kanssa kaikkien verkkoliitäntöjen näyttämiseen.

Nyt näytetään kaikki verkkoliitännät seuraavalla komennolla:

ip link show

Yllä oleva tulos näyttää tiedot kaikista verkkoliitännöistä, kuten liitännän nimi, liput, tila, linkin osoite, lähetysosoite jne.

4. Tietyn verkkoliitännän IP-osoitteen tarkistaminen

Saat yksityiskohtaiset tiedot yksittäisestä verkkoliitännästä, kuten IP-osoite ja MAC-osoite, käyttämällä seuraavaa komentoa alla kuvatulla tavalla.

ip link show eth2

Toistaiseksi olemme käyttäneet linkkiobjektia, joka näyttää yksityiskohtaista tietoa verkkoliitännöistä. Se ei kuitenkaan näytä verkkoliitäntään liittyvää IP-osoitetta. Tämän rajoituksen voittamiseksi voimme käyttää addr-objektia ip-komennon kanssa.

Ymmärretään tämä esimerkin avulla.

ip addr show

Tässä voimme nähdä, että nyt tulos näyttää kaikkien verkkoliitäntöjen IP-osoitteet muiden yksityiskohtien kanssa.

Jos haluat näyttää yksittäisen verkkoliitännän IP-osoitteen, sinun tarvitsee vain antaa verkkoliitännän nimi komennon argumenttina.

ip addr show eth2

5. IP-osoitteen näyttäminen värillisissä lähdöissä

ip-komento näyttää yksityiskohtaisia tietoja verkkoobjekteista. Joskus meidän on kuitenkin tarkasteltava rajoitettua tietoa. Tällaisissa tapauksissa voimme ottaa käyttöön värillisen tulosteen. Tämä vaihtoehto korostaa tärkeitä yksityiskohtia eri väreillä.

Käytetään komennon --color-vaihtoehtoa tulosteen näyttämiseen eri väreissä:

ip --color addr show eth2

Yllä olevassa tulosteessa voimme nähdä, että käyttöliittymän nimi, Ethernet-osoite ja tila on korostettu eri väreillä.

6. IP-osoitteen näyttäminen JSON-muodossa

Aiemmissa esimerkeissä näimme, että ip-komento näyttää merkityksellistä tietoa. Raakatulosteen jäsentäminen ja merkityksellisen tiedon poimiminen alkeellisten komentosarjojen avulla ei kuitenkaan ole helppoa. Tällaisissa tapauksissa voimme ohjata ip-komentoa luomaan tulosteen JSON-muodossa.

Joten, käytetään -j-vaihtoehtoa komennon kanssa näyttämään sama tulos JSON-muodossa:

ip -j link show eth2

Tämä menetelmä on hyödyllinen automatisoitaessa, koska JSON on laajalti hyväksytty muoto ja useita JSON-jäsennyskirjastoja/-työkaluja on saatavilla useilla ohjelmointikielillä.

7. Kuinka tehdä JSON-tuloste luettavammaksi

Edellisessä esimerkissä käytimme vaihtoehtoa -j näyttääksesi tulosteen JSON-muodossa. Tämä oletusarvoinen JSON-muoto on kompakti ja tilaa säästävä. Tulostetta ei kuitenkaan ole helppo lukea sisennyksen puutteen vuoksi.

Tämän rajoituksen voittamiseksi voimme käyttää -p-vaihtoehtoa, joka tekee tulosteesta luettavamman sisentämällä sen. Ymmärretään tämä alla olevan esimerkin avulla:

ip -j -p link show eth2

Tässä voimme nähdä, että sama tulos on paljon luettavampi verrattuna aikaisempiin esimerkkeihin.

8. IP-osoitteen poistaminen verkkoliitännästä

Edellisessä esimerkissä käytimme add-alikomentoa IP-osoitteen määrittämiseen. Samalla tavalla voimme käyttää del-alikomentoa tietyn IP-osoitteen poistamiseen.

Seuraava komento poistaa määritetyn IP-osoitteen annetusta käyttöliittymästä (eth2).

ip addr del 172.19.1.10/24 dev eth2
OR
sudo ip addr del 172.19.1.10/24 dev eth2

Nyt tarkistetaan, että IP-osoite on poistettu:

ip -j -p addr show eth2

Yllä olevassa tulosteessa voimme nähdä, että nyt eth2-verkkoliitännällä on vain yksi IP-osoite.

9. Verkkoliittymän ottaminen käyttöön

Lippu "ylös" ja käyttöliittymänimi (eth2) mahdollistaa verkkoliitännän. Esimerkiksi seuraava komento aktivoi eth2-verkkoliitännän.

ip link set eth2 up
OR
sudo ip link set dev eth2 up

Tarkastetaan nyt päivitetty tila:

ip -j -p link show eth2 | grep operstate

10. Verkkoliittymän poistaminen käytöstä

"alas" -lippu ja käyttöliittymänimi (eth2) poistaa verkkoliitännän käytöstä. Esimerkiksi seuraava komento deaktivoi eth2-verkkoliitännän.

ip link set eth2 down
OR
sudo ip link set eth2 down

Tarkastetaan nyt eth2-verkkoliitännän tila:

ip -j -p link show eth2 | grep operstate

Yllä oleva tulos näyttää verkkoliitännän muokatun tilan.

11. Verkkoliitännän IP-osoitteiden tyhjentäminen

Edellisessä esimerkissä näimme, kuinka del-alikomentoa käytetään IP-osoitteen poistamiseen. Joskus meidän on kuitenkin poistettava kaikki tietyn verkkoliitännän IP-osoitteet. Tällaisissa tapauksissa voimme käyttää huuhtele-alikomentoa.

Poista ensin kaikki eth2-verkkoliitännän IP-osoitteet flush-alikomennolla:

sudo ip addr flush eth2

Tarkastetaan nyt, että kaikki eth2-verkkoliitännän IP-osoitteet on poistettu:

ip -j -p addr show eth2

Yllä olevassa tulosteessa addr_info-kenttä näyttää tyhjän JSON-taulukon. Tämä tarkoittaa, että eth2-verkkoliitäntään ei ole liitetty IP-osoitetta.

12. Kuinka tarkistan reititystaulukon

Reititystaulukko tallentaa tarvittavat tiedot verkkopaketin välittämiseksi oikeaan kohteeseen. Voimme käyttää ip-komennon route-objektia näyttämään reitityssäännöt.

Käytetään alla olevaa komentoa listataksesi kaikki reititystaulukon säännöt:

ip route show

Yllä olevassa lähdössä ensimmäinen sarake edustaa kohdetta, kun taas viimeinen sarake edustaa lähteen IP-osoitetta.

13. Kuinka lisään uuden staattisen reitin

Miksi pitää lisätä staattisia tai manuaalisia reittejä, koska liikenne ei saa kulkea oletusyhdyskäytävän kautta? Meidän on lisättävä staattisia reittejä ohittaaksemme liikenteen parhaasta tavasta päästä määränpäähän.

sudo ip route add 172.19.1.0/24 dev eth2 proto kernel scope link src 172.19.1.2

Tarkistetaan nyt, että merkinnän lisääminen onnistui:

ip route show

15. Staattisen reitin poistaminen

del-alikomento poistaa tietyn merkinnän reititystaulukosta. Esimerkiksi alla oleva komento poistaa eth2-laitereitin merkinnän:

sudo ip route del 172.19.1.0/24

Tarkistetaan nyt, että merkintä on poistettu onnistuneesti:

ip route show

16. Kuinka voin lisätä pysyviä staattisia reittejä

Kaikki yllä olevat reitit menetetään järjestelmän uudelleenkäynnistyksen jälkeen. Voit lisätä pysyvän staattisen reitin muokkaamalla tiedostoa /etc/sysconfig/network-scripts/route-eth2 (Tallennamme staattisen reitin kohteelle (eth2). Oletusarvoisesti route-eth2-tiedosto ei ole siellä, ja se on luotava.

Aseta pysyvä reitti RHEL Systemsissä

vi /etc/sysconfig/network-scripts/route-eth2

ja lisää seuraavat rivit ja tallenna ja poistu.

172.19.1.0/24 via 172.19.1.2 dev eth2

Aseta pysyvä reitti Debian Systemsissä

Avaa tiedosto /etc/network/interfaces ja lisää lopuksi pysyvyyden staattiset reitit. IP-osoitteet voivat vaihdella ympäristössäsi.

sudo vi /etc/network/interfaces
auto eth2
iface eth2 inet static
address 172.19.50.2
netmask 255.255.255.0
gateway 172.19.50.100
#########{Static Route}###########
up ip route add 172.19.1.0/24 via 172.19.1.2 dev eth2

Käynnistä seuraavaksi verkkopalvelut uudelleen syötettyäsi kaikki tiedot seuraavalla komennolla.

sudo systemctl restart networking

17. Kuinka lisään oletusyhdyskäytävän

Verkottumisessa oletusyhdyskäytävällä on tärkeä rooli. Sitä käytetään, kun reititystaulukko ei sisällä mitään tietoa määränpäästä.

Oletusyhdyskäytävä voidaan määrittää maailmanlaajuisesti tai liitäntäkohtaisille konfiguraatiotiedostoille. Oletusyhdyskäytävän etuna on, että järjestelmässä on useampi kuin yksi verkkokortti. Voit lisätä oletusyhdyskäytävän lennossa komennon alla kuvatulla tavalla.

Lisätään ensin eth0-verkkoliitäntä oletusyhdyskäytäväksi:

sudo ip route add default via 172.17.0.1

Tarkastetaan nyt oletusyhdyskäytävän asetus seuraavalla komennolla:

ip route show

Huomaa, että olemme suorittaneet tämän komennon testikoneella. Ole varovainen käyttäessäsi tätä komentoa tuotantoympäristössä.

18. Oletusyhdyskäytävän poistaminen

Voimme käyttää seuraavaa komentoa oletusyhdyskäytävän poistamiseen:

sudo ip route del default

Listataan nyt reititystaulukko varmistaaksesi, että oletusyhdyskäytävä on poistettu:

ip route show

19. ARP-välimuistin näyttäminen

ARP on lyhenne sanoista Address Resolution Protocol, jota käytetään etsimään tiettyyn IP-osoitteeseen liittyvä MAC-osoite.

Voimme käyttää neigh-objektia ip-komennon kanssa näyttämään ARP-välimuistin:

ip neigh show

Yllä olevassa komennossa naapuri edustaa naapuriobjekteja.

20. ARP-merkinnän lisääminen

Uuden ARP-merkinnän luomiseksi voimme käyttää add-alikomentoa neigh-objektin kanssa.

sudo ip neigh add 172.19.1.0 lladdr 02:42:e3:40:a6:b1 dev eth2

Listataan nyt ARP-välimuistin merkinnät:

ip neigh show

Yllä olevassa tulosteessa näemme uuden merkinnän eth2-verkkoliittymälle.

21. ARP-merkinnän poistaminen

Kuten muutkin verkkoobjektit, voimme käyttää del-alikomentoa ARP-merkinnän poistamiseen. Esimerkiksi alla oleva komento poistaa eth2-verkkoliitännän ARP-merkinnän:

sudo ip neigh del 172.19.1.0 dev eth2

Tarkistetaan nyt, että merkintä on poistettu luettelemalla ARP-välimuisti:

ip neigh show 

22. ARP-merkintöjen tyhjentäminen

Voimme käyttää flush-alikomentoa useiden ARP-merkintöjen poistamiseen. Ymmärtääksesi tämän, lisää ensin muutama ARP-merkintä STALE-tilassa:

sudo ip neigh add 172.19.1.0 lladdr 02:42:e3:40:a6:b1 dev eth2 nud stale
sudo ip neigh add 172.19.2.0 lladdr 02:42:e3:40:a6:b2 dev eth2 nud stale
sudo ip neigh add 172.19.3.0 lladdr 02:42:e3:40:a6:b3 dev eth2 nud stale

Varmista seuraavaksi, että uudet merkinnät on lisätty onnistuneesti:

ip neigh show

Huuhtele sitten kaikki merkinnät alla olevalla komennolla:

sudo ip neigh flush all

Varmista lopuksi, että kaikki merkinnät on poistettu:

ip neigh show

23. MTU:n asettaminen verkkoliittymälle

MTU tulee sanoista Maximum Transmission Unit, joka edustaa suurinta pakettikokoa, joka voidaan lähettää yhdessä tapahtumassa. Voimme manipuloida MTU-kokoa suorituskykyvaatimustemme mukaisesti.

Etsitään ensin eth2-verkkoliitännän MTU:

ip -j -p link show eth2 | grep mtu

Päivitä seuraavaksi eth2-verkkoliitännän MTU-kooksi 3000:

sudo ip link set mtu 3000 dev eth2

Varmista lopuksi, että MTU on päivitetty onnistuneesti:

ip -j -p link show eth2 | grep mtu

24. Verkko-Mac-osoitteen muuttaminen

ip-komennolla voimme muuttaa verkkoliitännän MAC-osoitetta. Tämän saavuttamiseksi voimme käyttää set-alikomentoa linkkiobjektin kanssa:

Listaa ensin eth2-verkkoliitännän nykyinen MAC-osoite:

ip -j -p link show eth2 | grep address

Muuta seuraavaksi verkkoliitännän MAC-osoite alla olevalla komennolla:

sudo ip link set dev eth2 address 02:42:ac:13:01:03

Varmista lopuksi, että MAC-osoite on muutettu:

ip -j -p link show eth2 | grep address

Katso lisätietoja IP-komennosta käsikirjasivulta, jossa tehdään man ip pääte-/komentokehotteessa.

man ip
Johtopäätös

Tässä artikkelissa käsittelimme joitain yleisiä esimerkkejä ip-komennosta. Näitä esimerkkejä voidaan käyttää jokapäiväisessä elämässä verkonhallinnan suorittamiseen.

Tiedätkö muita parhaita esimerkkejä ip-komennosta Linuxissa? Kerro meille mielipiteesi alla olevissa kommenteissa.