miten ARP-välimuisti tyhjennetään Linuxissa, Windowsissa ja macOS: ssa?
Address Resolution Protocol (Arp) on erittäin tärkeä osa IP-verkottumista. ARP: tä käytetään OSI-verkon liittämiseen myöhemmin(Kerros 3) OSI-Tiedonsiirtokerrokseen (Kerros 2).
kommunikoidakseen minkä tahansa verkon laitteen kanssa laitteessa on oltava Ethernet-MAC-osoite.
mikä on ARP-välimuisti?
ARP-välimuisti toimii dynaamisten ARP-merkintöjen kirjastona. ARP-merkinnät luodaan, kun IP-osoitteet ratkaistaan isäntänimistä ja sitten MAC-osoitteisiin. Tämä prosessi on vastuussa siitä, että laitteet voivat kommunikoida eri laitteiden kanssa IP-osoitteita käyttäen.
syitä ARP-välimuistin tyhjentämiseen tietokoneelta
Arp-välimuistin tyhjentäminen ei ole välttämätön tehtävä, useimmissa tapauksissa reitittimen tai kytkimen uudelleenkäynnistys riittää yhteysongelmien korjaamiseen.
mutta ajan myötä arp-tietokannasta tulee tunkkainen, eivätkä uudet merkinnät välttämättä aina korvaa tietokannan vanhentuneita merkintöjä. Joten se voi vaikuttaa verkon suorituskykyä ja voi heittää virheitä, jotka voivat vaikuttaa järjestelmään.
miten tunnistaa, jos järjestelmässäsi on ARP-välimuistiongelma?
- tiettyjä IP-osoitteita ei voi pingata, kun tietää niiden toimivan oikein.
- ei voi ladata sivustoja, jotka toimivat hyvin tai toimivat oikein eri laitteilla.
jos kohtaat tämän tyyppisiä merkkejä, sinun pitäisi tyhjentää ARP-välimuisti heti!
Arp-välimuistin tyhjentäminen pakottaa kaikki tietokannassasi olevat pyynnöt käymään koko ARP-prosessin läpi uudelleen.
miten ARP-välimuisti tyhjennetään Linuxissa?
ARP-välimuistimerkintöjen etsimiseen Voimme käyttää arp-komentoapuohjelmaa Linuxissa. Suorita seuraava komento luetteloidaksesi kaikki käytettävissä olevat tietueet:
$ arp -nAddress HWtype HWaddress Flags Mask Iface192.168.1.240 ether 92:83:c6:3c:2a:9f C eth0192.168.225.1 ether a2:70:ce:72:65:13 C eth0192.168.1.26 ether 42:58:3a:d4:31:95 C eth0
huomaa, että välimuistitaulukossa on kolme arp-välimuistimerkintää. Huuhtelemme arp cache taulukon edelleen.
Arp-välimuistin tyhjentämiseen Linux-koneella on pääasiassa kaksi menetelmää.
- ARP-komennon käyttäminen
- ip-komennon käyttäminen
molemmat komennot ovat saatavilla useimmissa Linux-jakeluissa, kuten Kali linux, Ubuntu, Arch Linux, CentOS, Debian, Fedora, RHEL jne.
välimuistin tyhjentäminen arp-komennolla
arp on Linuxissa saatavilla oleva komentorivityökalu, jolla hallitaan järjestelmän välimuistia. arp
komennolla käyttäjät voivat tyhjentää tiettyjä välimuistimerkintöjä. Voimme valita, mitkä välimuistit on huuhdeltava tai tyhjennettävä.
käytä vain-d-valitsinta huuhdellaksesi näytetyt kohdat
$ arp -d 192.168.1.240
vahvistaaksesi, mitkä entit on poistettu, suorita seuraava komento,
$ arp -nAddress HWtype HWaddress Flags Mask Iface192.168.225.1 ether a2:70:ce:72:65:13 C eth0192.168.1.26 ether 42:58:3a:d4:31:95 C eth0
huomaa, että 192.168.1.240: n välimuisti on tyhjennetty.
, mikä tarkoittaa, että ARP-merkintä päivitetään aina, kun sitä tarvitaan.
kysymys: joskus komentoa
arp -d <IP-address>
käytetään välimuistin poistamiseen, se poistuu taulukosta merkintöjen kanssa, joissa HWaddress on merkitty nimellä(incomplete)
, mutta merkintä jää silti sinne. Kysymys on siis siitä, miten arp-merkintä poistetaan kokonaan pöydästä tai pöytä tyhjenee?Voimme käyttää ip-komentoapuohjelmaa tämän tyyppiseen ongelmanratkaisuun. Lue seuraava kohta ” Clearing cache with ip command (Fully flush arp cache)”
Clearing cache with ip command (Fully flush arp cache)
Clearing ARP cache using ip command on suositeltavin tapa Linuxissa, koska se voi tyhjentää koko ARP-välimuistin kerralla. ip-komento on sisäänrakennettu uudempiin Linux-jakeluihin.
käytä seuraavaa komentoa tyhjentääksesi koko ARP-välimuisti ip-apuohjelman avulla:
$ ip -s -s neigh flush all192.168.1.26 dev eth0 lladdr 42:58:3a:d4:31:95 ref 1 used 14/14/14 probes 4 REACHABLE192.168.1.240 dev eth0 lladdr 92:83:c6:3c:2a:9f ref 1 used 18/18/18 probes 4 REACHABLE192.168.225.1 dev eth0 lladdr a2:70:ce:72:65:13 used 246/246/215 probes 5 STALE*** Round 1, deleting 3 entries ****** Flush is complete after 1 round ***
ensimmäinen – s antaa ylimääräistä monisanainen ulostulo.
Toinen-s naapuritaulukon valintaan. ip
– komennolla varustettu naapuritaulu vastaa sekä ARP-että NDISC-välimuistia.
komento tyhjentää ARP-välimuistin kokonaan järjestelmästä yhdellä kertaa.
vahvista se vain suorittamalla seuraava komento,
$ arp -n
miten tyhjentää ARP välimuisti Windows?
Arp-välimuistin tyhjentäminen Windowsissa on superhelppo tehtävä. Käytämme komentokehote tyhjentää arp välimuisti tai huuhtele arp välimuisti windows-järjestelmästä. Tätä menetelmää voidaan soveltaa mihin tahansa Windows-käyttöjärjestelmään, kuten Windows 7, Windows 8, Windows 10 jne.
tässä vaatimus on, sinun täytyy suorittaa komentorivi(cmd) järjestelmänvalvojana. Jos olet järjestelmänvalvojan tilin niin se on hieno, voit ajaa cmd suoraan. Mutta, jos et ole kirjautunut sisään järjestelmänvalvojana, sinun täytyy aloittaa cmd järjestelmänvalvojana, jotta NetShell-komento toimii.
nähdäksesi Windowsin arp-välimuistin, suorita vain arp -a
komento komentokehotteessa.
tyhjentääksesi arp-välimuistin, suorita vain seuraava netsh
– komento,
netsh interface IP delete arpcache
kun olet tyhjentänyt ARP-välimuistin, vahvista se uudelleen käynnistämällä arp -a
– komento.
huomaa viesti ” ARP-merkintöjä ei löytynyt.”, mikä tarkoittaa, että Windowsin arp-välimuisti tyhjennetään tai huuhdellaan.
voimme käyttää myös
arp -d <ip address>
ARP-välimuistin tyhjentämiseen vain Windowsissa.
Arp-välimuistin tyhjentäminen macOS: ssa tai OS X: ssä
ARP-välimuistin tyhjentäminen tai huuhteleminen macOS: ssa, noudata näitä ohjeita:
- avaa päätesovellus.
- Aseta tämä komento nähdäksesi nykyisen järjestelmässä olevan ARP-välimuistin.
$ sudo arp -a? (192.168.1.240) at 92:83:c6:3c:2a:9f on en0 ifscope ? (192.168.1.26) at 42:58:3a:d4:31:95 on en0 ifscope ? (192.168.225.1) at a2:70:ce:72:65:13 on en0 ifscope permanent
- Käytä nyt seuraavaa komentoa tyhjentääksesi tai huuhtoaksesi koko macOS-järjestelmässä olevan ARP-välimuistin.