Mokėjimo būdai Abuse

Kaip konfigūruoti maršrutizavimą "Linux

14.03.2021, 18:59

Maršrutai, kuriais paketai pasiekia galutinę paskirties vietą, yra sukonfigūruoti sąsajoje arba maršrutizatoriuje. Jei kompiuteriui pavedama išsiųsti paketą į tinklą, jis žiūri į maršrutizavimo lentelę, kurioje išvardyti paskirties IP adresai ir namų tinklo sąsajų bei maršrutizatorių, galinčių išsiųsti paketą tinkamu adresu, adresai. Jei paskirties vietoje nenurodytas joks maršrutas, pirmiausia naudojamas vadinamasis numatytasis šliuzas arba numatytasis maršrutas. Lygiai toks pat modelis stebimas ir maršrutizatoriuje. Įrenginys pasižiūri į paskirties IP adresą, patikrina jį savo maršruto nustatymo lentelėje ir siunčia toliau. Toliau, remdamiesi pavyzdžiu, panagrinėkime, kaip konfigūruoti konkrečius maršrutus ir kurti naujus maršrutus.

Žvilgsnis į maršrutizavimo lentelę

Prieš pradėdami ką nors keisti, turite suprasti, kokios taisyklės jau naudojamos. Šiam tikslui "Linux" operacinė sistema pateikia keletą komandų. Norėdami tai padaryti, naudojame specialią komandą route:

$ route

Маршрутизация в Linux

Taip atrodo Linux maršrutizavimo lentelė. Joje pateikiama paprasta informacija, kurios ne visada pakanka, kad būtų galima suprasti esmę. Norint gauti išsamesnės informacijos, reikia naudoti komandą routel:

$ routel

Маршрутизация в Linux

Čia galite matyti IP adresą (tikslą), šliuzo IP adresą, šaltinio IP, protokolą ir net tinklo sąsają. Tačiau yra patogesnis būdas pamatyti Linux maršrutizavimo lentelę naudojant komandą IP:

$ ip route

Маршрутизация в Linux

Matome rezultatą, kuris panašus į ankstesnės komandos išvestį. Kadangi išvestis nėra patogiausios formos, galite naudoti ip route add arba ip route del kaip argumentą ip route add arba ip route del. Patikėkite, tai labai patogu. Tokiu būdu visur matysite numatytąjį šliuzą 192.168.1.1. Toliau pakalbėkime apie tai, ką reiškia šios komandos išvestis:

  • default - numatytoji parinktis. Tai turėtų būti tikslinis ip adresas arba potinklio kaukė;
  • via 192.168.1.1.1 - nurodo, per kurį šliuzą galime pasiekti šį tikslą, mūsų atveju tai yra 192.168.1.1;
  • dev enp2s0 - tinklo sąsaja, per kurią bus pasiekiamas šis šliuzas;
  • proto static reiškia, kad maršrutą nustatė administratorius, kernel reiškia, kad jį nustatė branduolys;
  • metric - tai maršruto prioritetas, kuo mažesnė reikšmė, tuo didesnis prioritetas.

Toliau pažiūrėkime, kaip konfigūruojami "Linux" maršrutai.

Maršrutų konfigūravimas

Vartotojas dar gali konfigūruoti maršrutizavimo lentelę naudodamas komandą ip. Pavyzdžiui, norint pakeisti numatytąjį maršrutą, tereikia įvykdyti:

$ ip route add default via 192.168.1.1

Taip galite pridėti maršrutą bet kuriam IP adresui, pavyzdžiui, 243.143.5.25:

$ sudo ip route add 243.143.5.25 via 192.168.1.1

Taigi, nurodome tikslinį IP adresą ir vietinio tinklo šliuzą, per kurį pasieksime šį adresą. Vienintelė problema yra ta, kad tokie maršrutai yra aktyvūs iki pirmojo kompiuterio perkrovimo. Po perkrovimo jie automatiškai ištrinami. Norint ištaisyti šį trūkumą, maršrutus reikia įtraukti į konfigūracijos failą.

Pavyzdžiui, "Red Hat" šeimos sistemose yra konfigūracijos failai /etc/sysconfig/network-scripts/route-ethX. Kiekviename faile gali būti aprašyti keli maršrutai, pvz:

ADRESŲ SĄRAŠAS: GATEWAY=10.10.0.0.0.1
NETMASK=255.0.0.0.0.0
IPADDR=10.10.0.0.0.22

Šiame konfigūracijos faile naudojamas gateway, tai yra sąsajos šliuzas, netmask yra tinklo maskuotė, o ipaddr yra sąsajos ip adresas. Debian ir kitose distribucijose maršrutus galite konfigūruoti /etc/network/interfaces faile. Čia route komanda pridedama prie iface skirsnio. Pavyzdžiui:

up route add -net 10.10.0.0 netmask 255.0.0.0 gw 10.10.0.1

Маршрутизация в Linux

Pavyzdžiui, su iface -net nurodome tikslinį tinklą, netmask - tinklo kaukę, o gw - vartus. Čia nėra nieko sudėtingo. Dabar pridėti maršrutai išliks net ir po perkrovimo.

Taigi pamatėme, kaip Linux sistemoje veikia maršrutizavimas, kaip Linux sistemoje konfigūruojamas maršrutizavimas ir kodėl jis reikalingas.