Laat zien welke apps & Processen een internetverbinding gebruiken via de opdrachtregel in Mac OS X
Inhoudsopgave:
- Namen van toepassingen en processen weergeven met internet in Mac OS X
- Gedetailleerde informatie weergeven voor proces-ID Verbinding maken met internet vanuit Mac OS X
Net zoals je het gebruik van het Mac OS X-bestandssysteem kunt volgen via de opdrachtregel, kun je ook ontdekken welke apps en individuele processen momenteel de internetverbinding van je Mac gebruiken. Dit is echt een handige truc als je weet dat je bandbreedte door iets wordt gebruikt, of als je gewoon probeert op te sporen welke applicaties of achtergrondprocessen verbinding maken met de buitenwereld.
Om te bepalen welke Mac-apps, daemons, processen of wat dan ook het internet gebruikt, gaan we naar de opdrachtregel van Mac OS X en gebruiken we een meer geavanceerde variant van het uitstekende lsof opdracht. En ja, dit werkt voor elke versie van MacOS of Mac OS X, en voor elk type internetverbinding via elke service, of het nu gaat om wifi en draadloos netwerken of ethernet, en dit zou ook werken op een Linux-machine, aangezien lsof een standaard netwerk is. tool binair.
We zullen twee manieren bespreken om dit te doen, de eerste biedt gemakkelijk leesbare uitvoer en drukt namen af van applicaties en processen die verbinding maken met de buitenwereld, en de tweede reeks geeft uiterst gedetailleerde informatie over welke PID maakt verbinding met welke host en gebruikt welk protocol. U kunt een of beide gebruiken, afhankelijk van uw specifieke behoeften.
Namen van toepassingen en processen weergeven met internet in Mac OS X
Open de Terminal-app als je dat nog niet hebt gedaan en voer de volgende opdracht exact in:
lsof -nPi | knippen -f 1 -d ">
Misschien wilt u die tekenreeks kopiëren/plakken als u niet bekend bent met de opdrachtregel, maar zorg ervoor dat de hele tekenreeks wordt uitgevoerd op een enkele syntaxisregel.
Als je dat lange commando uitvoert, krijg je uitvoer die er ongeveer zo uitziet:
SystemUIS Dropbox iChatAgen Finder iTunes Google ssh
Dit zijn slechts de applicatie- en procesnamen van wat actief internet gebruikt. Nu zijn er hier natuurlijk niet veel meer gegevens, maar als je alleen maar een malafide bandbreedte-vretende app probeert op te sporen, is het soms geschikt voor dat doel.
Natuurlijk zijn er veel situaties waarin uitgebreide informatie wordt gegeven over welk proces en/of apps een netwerkverbinding gebruiken, hoe en naar welk extern adres, en dat is wat we hierna zullen bespreken.
Gedetailleerde informatie weergeven voor proces-ID Verbinding maken met internet vanuit Mac OS X
Als u meer gedetailleerde informatie wilt dan wat wordt weergegeven in de bovenstaande opdrachtreeks, kunnen we de bovenstaande opdracht herzien zodat we meer onbewerkte gegevens uit lsof halen door de leidingen naar andere opdrachtregelhulpprogramma's te verwijderen, ons verlaten met ongeraffineerde details rechtstreeks van lsof. Je zult ook merken dat ik de vlag -n heb weggelaten omdat ik deze keer de hostnamen wil zien:
lsof -Pi
Dit levert veel gedetailleerdere gegevens op, waaronder de app-naam, PID, protocol, IP-adres, hostnaam en de huidige status van de verbinding. Allemaal zeer nuttige gegevens.
Als dat een overdaad aan informatie is, probeer dan de opdracht door 'meer' te laten lopen zodat het gemakkelijker in stukjes te lezen is, of gebruik grep om gegevens voor een specifieke app of proces te sorteren, zoals:
$ lsof -Pi |grep iChatAgen iChatAgen 228 David 10u IPv4 0x0bfe44ec 0t0 UDP 127.0.0.1:5191->bos-d25v-r2d2.blue.aol.com:5191 iChatAgen 228 David 13u IPv4 0x1e148b1e 0t0 TCP 192.168.1.29:50051->206.198.4.49:5190 (VESTIGD)
lsof is een krachtig hulpprogramma met talloze gebruiksmogelijkheden. Ik heb het gebruik van lsof al geruime tijd geleden besproken om bandbreedteproblemen op te sporen, maar het gebruikte alleen de vlag -i die aanzienlijk eenvoudiger is. U kunt elk van de behandelde variaties gebruiken en elk heeft zijn eigen use-cases die nuttig kunnen zijn.
Opdrachtregelprogramma's zijn bedoeld voor geavanceerde gebruikers, maar degenen die nieuwer zijn in Mac OS X of die gewoon niet van Terminal houden, kunnen apps zoals Private Eye gebruiken om te helpen zien wat de internetverbinding van een Mac gebruikt in een vergelijkbare manier, zij het veel gebruiksvriendelijker en volledig in een traditionele Mac-applicatie.