LFCA: Leer Basis Netwerkprobleem Oplossen Tips – Deel 12

Wanneer systemen problemen tegenkomen, zoals soms zal gebeuren, moet je weten hoe je met het probleem om moet gaan en ze terug kunt brengen naar een normale en functionele staat. In dit gedeelte richten we ons op fundamentele netwerkprobleemoplossingsvaardigheden die elke Linux-systeembeheerder zou moeten hebben.

Fundamenteel begrip van netwerkprobleemoplossing

In de meeste gevallen is er een groot verschil tussen netwerkbeheerders en systeembeheerders. Systeembeheerders die geen zicht hebben op het netwerk, zullen meestal de netwerkbeheerders de schuld geven van uitval en downtime, terwijl netwerkbeheerders met onvoldoende serverkennis vaak de systeembeheerders de schuld geven van het falen van eindapparaten. Het spel van de schuld helpt echter niet bij het oplossen van problemen en in een werkomgeving kan dit de relaties tussen collega’s onder druk zetten.

Als systeembeheerder kan het hebben van een fundamenteel begrip van netwerkprobleemoplossing helpen om problemen sneller op te lossen en een samenhangende werkomgeving te bevorderen. Het is om deze reden dat we dit gedeelte hebben samengesteld om enkele van de basisnetwerkprobleemoplossingstips te benadrukken die van pas zullen komen bij het diagnosticeren van problemen gerelateerd aan het netwerk.

A Recap of the TCP / IP Model

In ons vorige onderwerp van de LFCA-serie hebben we gekeken naar het TCP/IP conceptuele model dat de overdracht van gegevens in een computer laat zien en de protocollen die in elke laag worden gevonden.

TCP/IP Layer Model

Een ander even belangrijk conceptueel model is het OSI-model (Open Systems Interconnection) model. Het is een 7-laags TCP/IP-framework dat een netwerksysteem en computeringfuncties verdeelt over elke laag.

In het OSI-model zijn deze functies onderverdeeld in de volgende lagen, te beginnen van onderaf: Fysieke laag, Datalinklaag, Netwerklaag, Transportlaag, Sessielaag, Presentatielaag, & tot slot de Applicatielaag helemaal bovenaan.

OSI Model

Het is onmogelijk om het netwerkproblemen te bespreken zonder te verwijzen naar het OSI-model. Om deze reden zullen we u door elke laag begeleiden en de verschillende netwerkprotocollen bekijken die worden gebruikt en hoe u storingen kunt oplossen die verband houden met elke laag.

Laag 1: Fysieke laag

Dit is waarschijnlijk een van de meest over het hoofd geziene lagen, maar het is een van de meest essentiële lagen die nodig zijn voor elke communicatie. De Fysieke laag omvat de fysieke PC-netwerkcomponenten zoals netwerkkaarten, Ethernetkabels, optische vezels, etc. De meeste problemen beginnen hier en worden meestal veroorzaakt door:

  • Gebruik niet aangesloten network/ethernetkabel
  • Gecodeerde network/ethernetkabel
  • ontbrekend of beschadigd netwerkkaart

Op dit niveau zijn de meest voorkomende vragen:

  • “Is de networkkabel ingeplugd?”
  • “Is de fysieke networkverbinding actief?”
  • “Heeft u een IP-adres?”
  • “Kan u uw standaard gateway IP pingen?”
  • “Kan u uw DNS-server pingen?”

Om de status van uw netwerkinterfaces te controleren, voert u de opdracht ip uit:

$ ip link show
Check Network Interface Status

Uit de bovenstaande uitvoer blijkt dat we 2 interfaces hebben. Het eerste interface – lo – is de loopback-adres en wordt normaal gesproken niet gebruikt. Het actieve netwerkinterface dat verbinding biedt met het netwerk en internet is het interface enp0s3. U kunt uit de uitvoer zien dat de status van het interface is UP (actief).

Als een netwerkinterface niet actief is, zult u de uitvoer state DOWN (status niet actief) zien.

Network Interface Down

Als dit het geval is, kunt u het interface activeren met de volgende opdracht:

$ sudo ip link set enp0s3 up
Active Network Interface

U kunt ook de volgende ifconfig-opdracht uitvoeren.

$ sudo ifconfig enp0s3 up
$ ip link show
Enable Network Interface

Als een verificatie dat uw PC een IP-adres heeft gekregen van de router of DHCP-server, moet u het ifconfig-commando uitvoeren.

$ ifconfig
Check Server IP Address

Het IPv4-adres wordt gemarkeerd met het parameter ‘inet’ zoals hieronder te zien is. Bijvoorbeeld, het IP-adres voor dit systeem is 192.168.2.104 met een subnet of netmasker van 255.255.255.0.

$ ifconfig
Check Server IP Address

U kunt ook het ip address-commando volgen om het IP-adres van uw systeem te controleren.

$ ip address

Om het IP-adres van de standaard gateway te controleren, moet u het volgende commando uitvoeren:

$ ip route | grep default

Het IP-adres van de standaard gateway, meestal de DHCP-server of router, wordt aangegeven zoals hieronder te zien. In een IP-netwerk moet u de standaard gateway kunnen pingen.

Check Network Gateway

Om de DNS-servers die u gebruikt te controleren, moet u het volgende commando op systemd-systemen uitvoeren.

$ systemd-resolve --status
Check DNS Servers

A better way to check the DNS servers in use is to run the nmcli command shown

$ ( nmcli dev list || nmcli dev show ) 2>/dev/null | grep DNS
Check DNS Using nmcli Command

Zoals u heeft gemarkeerd, gebeurt er een groot gedeelte van het netwerkprobleemoplossing hier.

Laag 2: Data Link Layer

In essentie bepaalt de data link layer de dataformaten op het netwerk. Dit is waar de communicatie van dataframes tussen hosts plaatsvindt. Het meest voorkomende protocol in deze laag is het ARP ( Address Resolution Protocol).

ARP is verantwoordelijk voor het ontdekken van linklaagadressen en voert de mapping uit van IPv4-adressen op laag 3 naar MAC-adressen. Meestal, als een host de standaard gateway contacteert, zijn er kansen dat de host al het IP-adres van de host heeft, maar niet de MAC-adressen.

Het ARP-protocol overbrugt de kloof tussen laag 3 en laag 2 door de 32-bits IPv4-adressen op laag 3 te vertalen naar 48-bits MAC-adressen op laag 2 en vice versa.

Wanneer een pc zich aansluit bij een LAN-netwerk, wijst de router (standaardgateway) het een IP-adres toe ter identificatie. Wanneer een andere host een datapakket verzendt dat bestemd is voor de pc naar de standaardgateway, vraagt de router ARP om het bijbehorende MAC-adres bij het IP-adres te vinden.

Elk systeem heeft zijn eigen ARP-tabel. Om uw ARP-tabel te controleren, voert u het volgende commando uit:

$ ip neighbor show
Check Network ARP Table

Zoals u kunt zien, is het MAC-adres van de router ingevuld. Als er een oplossingsprobleem is, retourneert het commando geen uitvoer.

Laag 3: Netwerk / Internetlaag

Dit is de laag waarop u exclusief werkt met IPv4-adressen die bekend zijn bij systeembeheerders. Het biedt meerdere protocollen zoals ICMP en ARP, waarover we hebben gesproken, en andere zoals RIP (Routing Information Protocol).

Enkele van de veelvoorkomende problemen zijn apparaatmisconfiguratie of problemen met netwerkapparaten zoals routers en switches. Een goede plek om te beginnen met het oplossen van problemen is controleren of uw systeem een IP-adres heeft gekozen, zoals volgt:

$ ifconfig
Check Server IP Address

Ook kunt u de ping-opdracht gebruiken om de internetconnectiviteit te controleren door een ICMP-echo-pakket naar de DNS van Google te sturen. De -c-vlag geeft het aantal verzonden pakketten aan.

$ ping 8.8.8.8 -c 4
Check Network Activity

De uitvoer toont een positief antwoord van de DNS van Google zonder pakketverlies. Als u een intermitterende verbinding heeft, kunt u controleren op welk punt de pakketten worden verworpen met behulp van de traceroute-opdracht als volgt.

$ traceroute google.com
Trace Network Activity

De asterisken geven aan op welk punt pakketten worden verworpen of verloren gaan.

De nslookup-opdracht vraagt de DNS om het IP-adres op te halen dat is gekoppeld aan een domeinnaam of hostnaam. Dit wordt ook wel een Voorwaartse DNS-opzoeking genoemd.

Bijvoorbeeld.

$ nslookup google.com

De opdracht onthult de IP-adressen die zijn gekoppeld aan het domein 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

De dig-opdracht is nog een opdracht die wordt gebruikt voor het bevragen van DNS-servers die zijn gekoppeld aan een domeinnaam. Bijvoorbeeld, om de DNS-nameservers te bevragen voert u het volgende uit:

$ dig google.com

Laag 4: Transportlaag

De transportlaag hanteert gegevensoverdracht met behulp van TCP en UDP protocollen. Ter herinnering, TCP is een verbindingsgericht protocol terwijl UDP verbindingloos is. Draaiende applicaties luisteren naar sockets die bestaan uit poorten en IP-adressen.

Veelvoorkomende problemen die kunnen optreden zijn onder andere geblokkeerde TCP-poorten die mogelijk nodig zijn voor applicaties. Als je een webserver hebt en je wilt de bedrijfsstatus ervan verifiëren, gebruik dan de netstat of ss commando om te controleren of de webservice luistert naar poort 80

$ sudo netstat -pnltu | grep 80
OR
$ ss -pnltu | grep 80
Check Network Ports Status

Soms kan een poort in gebruik zijn door een actieve service in het systeem. Als je wilt dat een andere service die poort gebruikt, kan het nodig zijn om deze te configureren om een andere poort te gebruiken.

Als je nog steeds problemen ondervindt, controleer dan de firewall en verifieer of de poort waarin je geïnteresseerd bent, is geblokkeerd.

Het merendeel van de probleemoplossing zal plaatsvinden over deze 4 lagen. Er wordt heel weinig probleemoplossing gedaan in de sessie-, presentatie- en applicatielagen. Dit komt omdat ze een minder actieve rol spelen in het functioneren van een netwerk. Laten we echter snel een overzicht geven van wat er gebeurt in die lagen.

Laag 5: Sessielaag

De sessielaag opent communicatiekanalen die sessies worden genoemd en zorgt ervoor dat ze open blijven tijdens de gegevensoverdracht. Het sluit ze ook zodra de communicatie is beëindigd.

Laag 6: Presentatielaag

Ook wel bekend als de syntaxislaag, de presentatielaag synthetiseert gegevens die worden gebruikt door de toepassingslaag. Het geeft aan hoe apparaten gegevens moeten versleutelen, coderen en comprimeren met als doel ervoor te zorgen dat deze goed worden ontvangen aan de andere kant.

Laag 7: Toepassingslaag

Tenslotte hebben we de toepassingslaag, die het dichtst bij de eindgebruikers ligt en hen in staat stelt om te interageren met de toepassingssoftware. De toepassingslaag is rijk aan protocollen zoals HTTP, HTTPS, POP3, IMAP, DNS, RDP, SSH, SNMP en NTP om er maar een paar te noemen.

Conclusie

Als u een Linux-systeem wilt oplossen, wordt de gelaagde benadering met behulp van het OSI-model ten zeerste aanbevolen, te beginnen bij de onderste laag. Dit geeft u inzicht in wat er misgaat en helpt u om het probleem te beperken.

Source:
https://www.tecmint.com/basic-network-troubleshooting-tips/