LFCA: Naučite osnovne savjete za rješavanje problema s mrežom – 12. dio


Kada sustavi naiđu na probleme, kao što se ponekad događa, morate znati kako zaobići problem i vratiti ih u normalno i funkcionalno stanje. U ovom odjeljku fokusirat ćemo se na osnovne vještine rješavanja problema s mrežom koje bi svaki administrator Linux sustava trebao imati.

Temeljno razumijevanje rješavanja problema s mrežom

U većini slučajeva postoji veliki jaz između mrežnih administratora i sistemskih administratora. Sistemski administratori koji nemaju mrežnu vidljivost obično će kriviti mrežne administratore za prekide rada i zastoje, dok će mrežni administratori s nedostatkom znanja o poslužitelju često kriviti sistemske administratore za kvar krajnjeg uređaja. Međutim, igra okrivljavanja ne pomaže u rješavanju problema, au radnom okruženju to može dovesti do antagonizma u odnosima među kolegama.

Kao sistemski administrator, temeljno razumijevanje rješavanja problema s mrežom pomoći će u bržem rješavanju problema i promicanju kohezivnog radnog okruženja. Iz tog smo razloga sastavili ovaj odjeljak kako bismo istaknuli neke od osnovnih savjeta za rješavanje problema s mrežom koji će vam dobro doći prilikom dijagnosticiranja problema povezanih s mrežom.

Rekapitulacija TCP/IP modela

U našoj prethodnoj temi serije LFCA, pogledali smo konceptualni model TCP/IP koji prikazuje prijenos podataka u računalu i protokole koji se nalaze u svakom sloju.

Drugi jednako važan konceptualni model je OSI model (Open Systems Interconnection) model. To je 7-slojni TCP/IP okvir koji razgrađuje mrežni sustav, a računalstvo funkcionira kao svaki sloj.

U OSI modelu, te su funkcije segmentirane u sljedeće slojeve počevši od dna. Fizički sloj, sloj podatkovne veze, mrežni sloj, transportni sloj, sloj sesije. Presentation Layer, i konačno Application Layer na samom vrhu.

Nemoguće je govoriti o rješavanju mrežnih problema bez pozivanja na OSI model. Iz tog razloga, provest ćemo vas kroz svaki sloj i saznati različite mrežne protokole koji se koriste i kako otkloniti greške povezane sa svakim slojem.

Sloj 1: Fizički sloj

Ovo je vjerojatno jedan od slojeva koji se najviše zanemaruje, ali je ipak jedan od najvažnijih slojeva potrebnih za odvijanje bilo kakve komunikacije. Fizički sloj obuhvaća fizičke komponente računala za umrežavanje računala kao što su mrežne kartice, Ethernet kabeli, optička vlakna itd. Većina problema počinje ovdje i uglavnom ih uzrokuje:

  • Isključen mrežni/ethernet kabel
  • Oštećen mrežni/ethernet kabel
  • Nedostaje ili je oštećena mrežna kartica

U ovom sloju, pitanja koja padaju na pamet su:

    Da provjerite status svojih mrežnih sučelja, pokrenite naredbu ip:

    ip link show
    

    Iz gornjeg rezultata, imamo 2 sučelja. Prvo sučelje – lo – je povratna adresa i obično se ne koristi. Aktivno mrežno sučelje koje omogućuje povezivanje s mrežom i internetom je enp0s3 sučelje. Iz rezultata možemo vidjeti da je stanje sučelja UP.

    Ako mrežno sučelje ne radi, vidjet ćete izlaz stanje DOWN.

    Ako je to slučaj, sučelje možete pokrenuti pomoću naredbe:

    sudo ip link set enp0s3 up
    

    Alternativno, možete pokrenuti naredbu ifconfig prikazanu u nastavku.

    
    sudo ifconfig enp0s3 up
    ip link show
    

    Samo da biste potvrdili da je vaše računalo odabralo IP adresu s usmjerivača ili DHCP poslužitelja, pokrenite naredbu ifconfig.

    ifconfig
    

    IPv4 adresa ima prefiks inet parametra kao što je prikazano. Na primjer, IP adresa ovog sustava je 192.168.2.104 s podmrežom ili mrežnom maskom 255.255.255.0.

    
    ifconfig
    

    Alternativno, možete pokrenuti naredbu ip adresa kako slijedi kako biste provjerili IP adresu vašeg sustava.

    
    ip address
    

    Da biste provjerili IP adresu zadanog pristupnika, pokrenite naredbu:

    
    ip route | grep default
    

    IP adresa zadanog pristupnika, koji je u većini slučajeva DHCP poslužitelj ili usmjerivač, naznačena je kao što je prikazano u nastavku. U IP mreži trebali biste moći pingati zadani pristupnik.

    Za provjeru DNS poslužitelja koje koristite, pokrenite sljedeću naredbu na systemd sustavima.

    
    systemd-resolve --status
    

    Bolji način provjere DNS poslužitelja koji se koriste je pokretanje prikazane naredbe nmcli

    
    ( nmcli dev list || nmcli dev show ) 2>/dev/null | grep DNS
    

    Kao što ste primijetili, ovdje se događa prilično velik dio problema s mrežom.

    Sloj 2: Sloj podatkovne veze

    U biti, sloj podatkovne veze određuje format podataka na mreži. Ovdje se odvija komunikacija podatkovnih okvira između hostova. Prevladavajući protokol u ovom sloju je ARP (Address Resolution Protocol).

    ARP je odgovoran za otkrivanje adresa sloja veze i izvodi mapiranje IPv4 adresa na sloju 3 u MAC adrese. Obično, kada host kontaktira zadani gateway, velike su šanse da već ima IP hosta, ali ne i MAC adrese.

    ARP protokol premošćuje jaz između sloja 3 i sloja 2 prevođenjem 32-bitnih IPv4 adresa na sloju 3 u 48-bitne MAC adrese na sloju 2 i obrnuto.

    Kada se računalo pridruži LAN mreži, usmjerivač (zadani pristupnik) dodjeljuje mu IP adresu za identifikaciju. Kada drugo glavno računalo pošalje paket podataka namijenjen računalu na zadani pristupnik, usmjerivač zahtijeva ARP da potraži MAC adresu koja ide uz IP adresu.

    Svaki sustav ima vlastitu ARP tablicu. Da provjerite svoju ARP tablicu, pokrenite naredbu:

    ip neighbor show
    

    Kao što možete primijetiti, MAC adresa usmjerivača je popunjena. Ako postoji problem rješavanja, naredba ne vraća izlaz.

    Sloj 3: Mrežni/internetski sloj

    Ovo je sloj na kojem radite isključivo s IPv4 adresama koje poznaju administratori sustava. Pruža višestruke protokole kao što su ICMP i ARP koje smo pokrili i druge kao što je RIP (Routing Information Protocol ).

    Neki od uobičajenih problema uključuju pogrešnu konfiguraciju uređaja ili probleme s mrežnim uređajima kao što su usmjerivači i preklopnici. Dobro mjesto za početak rješavanja problema je provjeriti je li vaš sustav odabrao IP adresu na sljedeći način:

    ifconfig
    

    Također, možete koristiti naredbu ping za provjeru internetske veze slanjem ICMP echo paketa Googleovom DNS-u. Oznaka -c označava broj paketa koji se šalju.

    ping 8.8.8.8 -c 4
    

    Izlaz pokazuje pozitivan odgovor Googleovog DNS-a bez gubitka paketa. Ako imate povremenu vezu, možete provjeriti na kojoj se točki paketi ispuštaju pomoću naredbe traceroute kako slijedi.

    traceroute google.com
    

    Zvjezdice označavaju točku u kojoj se paketi ispuštaju ili gube.

    Naredba nslookup postavlja upit DNS-u kako bi dobila IP adresu povezanu s domenom ili nazivom hosta. To se naziva prosljeđivanje DNS pretraživanja.

    Na primjer.

    
    nslookup google.com
    

    Naredba otkriva IP adrese povezane s domenom google.com.

    
    Server:		127.0.0.53
    Address:	127.0.0.53#53
    
    Non-authoritative answer:
    Name:	google.com
    Address: 142.250.192.14
    Name:	google.com
    Address: 2404:6800:4009:828::200e
    

    Naredba dig još je jedna naredba koja se koristi za postavljanje upita DNS poslužiteljima povezanim s nazivom domene. Na primjer, za upit DNS poslužiteljima imena pokrenite:

    
    dig google.com
    

    Sloj 4: Transportni sloj

    Prijenosni sloj upravlja prijenosom podataka pomoću TCP i UDP protokola. Samo da rezimiramo, TCP je protokol usmjeren na povezivanje dok je UDP protokol bez povezivanja. Pokrenuta aplikacija sluša na utičnicama koje se sastoje od portova i IP adresa.

    Uobičajeni problemi koji se mogu pojaviti uključujući blokirane TCP portove koji mogu biti potrebni aplikacijama. Ako imate web poslužitelj i želite provjeriti njegovo stanje rada, upotrijebite naredbu netstat ili ss da provjerite sluša li web servis priključak 80

    sudo netstat -pnltu | grep 80
    OR
    ss -pnltu | grep 80
    

    Ponekad port može koristiti pokrenuta usluga u sustavu. Ako želite da druga usluga koristi taj priključak, možda ćete biti prisiljeni konfigurirati ga da koristi drugi priključak.

    Ako i dalje imate problema, provjerite vatrozid i provjerite je li priključak koji vas zanima blokiran.

    Većina rješavanja problema dogodit će se preko ova 4 sloja. Vrlo se malo rješava problema u slojevima sesije, prezentacije i aplikacije. To je zato što igraju manje aktivnu ulogu u funkcioniranju mreže. Međutim, idemo na brzinu imati pregled onoga što se događa u tim slojevima.

    Sloj 5: Sloj sesije

    Sloj sesije otvara komunikacijske kanale koji se nazivaju sesijama i osigurava da ostanu otvoreni tijekom prijenosa podataka. Također se zatvara kada se komunikacija prekine.

    Sloj 6: Sloj prezentacije

    Također poznat kao sloj sintakse, prezentacijski sloj sintetizira podatke koje koristi aplikacijski sloj. Navodi kako bi uređaji trebali kriptirati, kodirati i sažimati podatke s ciljem da budu dobro primljeni na drugom kraju.

    Sloj 7: Sloj aplikacije

    Na kraju, imamo aplikacijski sloj koji je najbliži krajnjim korisnicima i omogućuje im interakciju s aplikacijskim softverom. Aplikacijski sloj bogat je protokolima kao što su HTTP, HTTPS, POP3, IMAP, DNS, RDP, SSH, SNMP i NTP da spomenemo neke.

    Zaključak

    Prilikom rješavanja problema s Linux sustavom, visoko se preporučuje slojeviti pristup korištenjem OSI modela, počevši od donjeg sloja. To vam daje uvid u ono što ne valja i pomaže vam da suzite problem.