Windows nettverkskommandoer i Linux: 5 ekvivalenter du bør kjenne (pluss WSL-triks)

Lær hvordan du bruker Windows nettverkskommandoer som ping og tracert i Linux og WSL, inkludert praktiske eksempler og installasjonstrinn for nødvendige verktøy.
Hvis du har brukt nettverkskommandoer på Windows, som ping og tracert, lurer du kanskje på om du kan bruke dem på Linux, enten alene eller som del av WSL. Heldigvis kan du det.
ping
Jeg husker at jeg satt i en datanettverksklasse på college da instruktøren demonstrerte bruken av ping-kommandoen i Windows Kommandoprompt. Det var begynnelsen på et livslangt forhold, selv om det har krysset operativsystemer og kommet tilbake full sirkel med WSL.
Den enkleste måten å bruke ping i Linux- og WSL-kommandolinjen er å skrive ping etterfulgt av en IP-adresse eller domenenavn.
ping google.comping 127.0.0.1 Den sistnevnte vil pinge "loopback-enheten", eller grensesnittet til din lokale maskin. Ping er nyttig for å avgjøre om en vert er oppe, eller i det minste responderer på pingforespørslene. Noen verter kan fortsatt være oppe, men avvise pingforespørselen av sikkerhetsgrunner. Ping er også nyttig for å bestemme om et nettsted er nede for alle eller bare deg.
Standard oppførsel til ping på Linux og andre Unix-lignende systemer er forskjellig fra Windows. På Windows vil ping-kommandoen kjøre fire ganger. På Linux vil ping kjøre for alltid til du trykker Ctrl + c, deretter vise deg noen statistikker om de returnerte pakkene.
For å stoppe ping etter et bestemt antall pings, bruk -c-alternativet. For å pinge en vert fire ganger:
ping -c 4 google.comtracert: traceroute eller tracepath på Linux
Et annet nyttig nettverksdiagnoseverktøy på Windows er tracert-verktøyet. Dette verktøyet lar deg spore en sti fra maskinen din gjennom nettverksnoder helt frem til destinasjonsmaskinen. I praksis er dette nødvendigvis ikke helt pålitelig fordi noen verter langs veien ikke vil svare. Det er fortsatt nyttig for å finne ut om et nettsted er nede for alle andre eller bare deg.
Du kan lete etter det i Linux, men du kan oppdage at det mangler. Det har bare et annet navn. Prøv å kjøre "traceroute" kommandoen:
traceroute example.comEller du kan prøve kommandoen tracepath:
tracepath example.comDu må kanskje installere en ekstra pakke på systemet ditt, avhengig av hvilken Linux-distribusjon du bruker. Hvis disse kommandoene mislykkes, kan du prøve å søke i pakkebehandleren din for å identifisere en pakke du måtte trenge å installere.
Som et alternativ kan du vurdere å installere MTR, som kombinerer funksjonene til ping og traceroute i ett verktøy. For å installere det på Ubuntu:
sudo apt install mtrDu kan kalle MTR med vertsnavnet eller IP-adressen på samme måte som med ping og traceroute:
mtr howtogeek.comStandard oppførsel er å åpne et GUI-vindu og fortsette å gjentake traceroute. Du kan få MTR til å vise seg i terminalen med -t-alternativet:
mtr -t howtogeek.com Du kan gjøre dette automatisk ved å sette miljøvariabelen MTR_OPTIONS:
export MTR_OPTIONS="-t"Du kan legge dette i .bashrc- eller .zshrc-filene dine for å sette det hver gang du åpner et nytt terminalvindu.
Nå, når du kjører MTR, vil det kjøre i terminalvinduet.
En viktig forskjell fra konvensjonelle traceroutes er at MTR viser statistikk på hver node, likt det du ville sett med en ping. Det vil fortelle deg de korteste, lengste og gjennomsnittlige pingtidene for hver node, samt standardavviket. Dette vil fortelle deg hvor spredt pingtidene er rundt gjennomsnittet.
ipconfig - Bare ip på Linux
Du har kanskje brukt ipconfig-kommandoen på Windows for å se informasjon om nettverkskonfigurasjonen din. ifconfig pleide å være det ekvivalente i Linux, men det er bare "ip" nå.
For å se alle nettverksgrensesnittene på systemet ditt:
ip linkFor å se IP-adressen:
ip addressI WSL2, som standard, vil du se adressen til WSL-virtuell maskin. Hvis du vil administrere nettverkstilkoblingen til Windows-systemet ditt på en Windows-maskin, er det best å gjøre det direkte derfra.
Windows-siden.
netstat - Bruk lsof eller ss
Noen ganger ønsker du å se alle åpne nettverksforbindelser. Kanskje er du bekymret for at noen har fått uautorisert tilgang til systemet ditt. Kanskje vil du bare se hvilke apper som "ringer hjem". På Windows kan du bruke netstat-kommandoen til dette. Det finnes også tilsvarende verktøy på Linux.
lsof er et vanlig verktøy for å undersøke åpne filer. På Linux er alt en fil, og dette inkluderer nettverksforbindelser. Du kan bare kjøre lsof-kommandoen i terminalen:
lsofSom standard vil dette bare vise deg alle filer som kjørende Linux-apper har åpne. For å se alle internettilkoblinger, bruk -i-alternativet:
lsof -iPå Linux vil ss også vise informasjon om åpne nærkoder, tilsvarende netstat:
ssEt varsel hvis du bruker WSL, er at disse verktøyene bare vil vise deg forbindelsene på Linux-siden av systemet. Hvis du vil undersøke Windows-prosesser, kan du bruke Windows netstat-verktøyet fra WSL med teknikker nevnt senere i denne artikkelen.
nslookup: Bruk nslookup eller dig på Linux i stedet
For å finne ut hvem som står bak et domenenavn, kan du bruke nslookup-verktøyet på Windows. Du kan gjøre det samme på Linux.
Det finnes en lignende nslookup-kommando på Linux:
nslookup howtogeek.comDu kan også bruke dig-verktøyet:
dig howtogeek.comBegge disse vil vise "navneservere" for domenenavnet assosiert med adressen du oppga, i dette tilfellet howtogeek.com.
Avhengig av Linux-systemet ditt, kan det hende at disse verktøyene ikke er installert som standard. De var ikke på Ubuntu-distribusjonen som er standard for WSL. Hvis du vil ha disse verktøyene, må du installere en annen pakke kalt "bind9-dnsutils".
Heldigvis er dette enkelt å gjøre med apt:
sudo apt install bind9-dnsutils Bonus Tips: Bruk både Linux- og Windows-kommandoer i WSL
Hvis du bruker WSL, kan du blande sammen Linux- og Windows-kommandoer.
Fra Linux-siden kan du legge til ".exe" i en kommando for å bruke Windows-versjonen. For eksempel, for å kjøre Windows netstat-kommandoen:
netstat.exe Fra Windows-siden kan du også kjøre Linux-kommandoer med wsl-kommandoen. For eksempel, for å kjøre Linux ping fra PowerShell ved å bruke standard Linux-distribusjonen:
wsl ping google.comHvis du har kjørt nettverkskommander fra Windows kommandolinjen, kan du enkelt gjøre det fra Linux, og WSL gjør det enda enklere ved å kjøre kommandoer fra begge systemene. Mange av Windows-kommandoene stammer fra Unix-lignende systemer, som er grunnen til at mange av dem er så like.
Hvis du vil lese flere artikler som Windows nettverkskommandoer i Linux: 5 ekvivalenter du bør kjenne (pluss WSL-triks), kan du besøke kategorien Linux.

Legg igjen en kommentar