Aceasta este un fel de continuare a acest postul meu.
Am adresa mac a telefonului meu (samsung galaxy S9; deși nu ar trebui să conteze). Vreau să verific dacă este în rețea sau nu. Nu are un ip static, așa că trebuie să-l verific folosind adresa mac.
Mă voi referi la adresa mac a telefonului meu cu [1]
.
Acesta este „jurnalul” evenimentelor:
#telefon conectat la rețea
ping -b 192.168.2.255 -c 20 &> /dev/null
arp | grep -i „[1]”
-> succes
#telefon NU este conectat la rețea (wifi-ul a fost oprit pe telefon)
ping -b 192.168.2.255 -c 20 &> /dev/null
arp | grep -i „[1]”
-> succes
A doua oară, nu ar trebui să aibă succes. Telefonul nu este conectat la rețea, dar încă îl arată în ieșirea arp.
Telefonul meu nu are o adresă ip statică, dar când îl conectez la rețea, primește aproape întotdeauna aceeași adresă ip. E in regula. The ping -b
ieșirea a fost întotdeauna corectă. Când telefonul meu este conectat la rețea, văd adresa ip pe care o primește aproape întotdeauna în listă (a ping
comanda). Când telefonul meu nu este conectat, nu văd niciodată adresa IP „standard” în ieșire. Deci ping funcționează și este „actualizat”.
Deci presupun că arp nu este „actualizat” așa cum este ping (dar aceasta este doar presupunerea mea brută). Cred că arp nu își actualizează tabelul, deși ping a „făcut” unul nou. Dar asta cred eu pe baza unui comentariu al postării anterioare: "Efectuați deja un ping de difuzare, ping -b 192.168.2.255. Acest lucru ar trebui să umple tabelul arp pentru orice dispozitiv online cu adresa IP 192.168.2..*"
Ajutor!