Vypsat všechna otevřená internetová připojení na Macu z terminálu a zjistit problémy s šířkou pásma
Nedávno LAN v mé kanceláři běžela pomaleji než obvykle a nemohl jsem přesně určit, co zabírá veškerou extra šířku pásma. Měl jsem podezření, že je na vině provoz P2P, ale na závadném počítači jsem prostě neviděl nic zřejmého. Otázkou tedy samozřejmě je, jak vidíte, jaké procesy se připojují k internetu nebo vnějšímu světu z Mac OS X?
Pomocí nástroje příkazového řádku lsof můžeme předat argument -i, abychom vypsali pouze aktivní a otevřená internetová připojení na našich počítačích Mac, a můžeme zjistit, zda je tam něco zvláštního (nebo v mém případě, něco skrytého) děje a připojuje se k vnější adrese a tento příkaz vám také ukáže, jaké je ID procesu problematické aplikace nebo úlohy, takže ji můžeme v případě potřeby zastavit a zastavit aktivitu.
Zobrazení seznamu všech otevřených připojení k internetu v OS X z příkazového řádku
Toto je nutné zadat z terminálu OS X, ale lze jej použít vzdáleně pomocí SSH nebo lokálně na počítači Mac.
Přihlásil jsem se do problematického Macu a zadal následující příkaz:
lsof -i
Neměli byste používat sudo, ale můžete, pokud si to přejete nebo vyžaduje váš konkrétní případ použití.
Výstup lsof je trochu zaneprázdněný, ale pokud znáte příkazový řádek, nemělo by to vypadat příliš bláznivě.
Zde je příklad výstupu zobrazeného řetězcem příkazu lsof -i:
MacMini:~ macuser$ lsof -i COMMAND PID UŽIVATELE FD TYP ZAŘÍZENÍ VELIKOST/VYP. NÁZEV UZLU SystemUIS 93 macuser 6u IPv4 0x04db27bc 0t0 UDP : SystemUIS 93 ma IPv4 0x04db26e0 0t0 UDP : iChatAgen 111 macuser 6u IPv4 0x07084734 0t0 UDP localhost:49490->localhost:49490 iChatAgen 111 macuser 10u IPv4 0x05666f28 0t0 TCP 192.168.0.101:53762->bos-m012c-sdr6.blue.aol.com:aol ( Zavedeno) Synergys 129 MacUser 5u IPv4 0x05F2F6B0 0T0 TCP : 24800 (Poslouchejte) Safari 148 Macuser 10U IPV4 0X06DB46E0 0T0 TCP 192.168.0.101:5757-643452HOST29.prod.google) :daap (POSLECHNOUT)
Na výše uvedeném výstupu lsof není nic neobvyklého, ale ve výše uvedeném řešení problémů se sítí jsem objevil klienta BitTorrent spuštěný skrytý na pozadí jednoho z mých síťových počítačů Mac a zaséval několik velkých souborů! Přirozeně jsem zabil klienta BitTorrent, odstranil aplikaci, smazal soubory a Mac LAN zase běží na plnou rychlost.
Uvedení pouze navázaných připojení k internetu
Pokud chcete zobrazit pouze navázaná spojení (to znamená, že aktivně komunikují a bylo navázáno spojení mezi místním počítačem a vnější IP), můžete použít tuto variantu výše uvedeného příkazu lsof řetězec:
lsof -i | grep -E (POSLECHNOUT|NASTAVENO)"
Můžete to zkombinovat s funkcí „sledovat“ a získat také automaticky aktualizovaný seznam navázaných spojení.
A pokud náhodou znáte název procesu, můžete vždy použít grep i pro tento konkrétní nebo vágní název.
Toto je trochu pokročilé, ale funguje docela dobře pro uživatele Mac, kterým vyhovuje terminál a příkazový řádek obecně. Více začínajících uživatelů Macu může používat Private Eye ke sledování internetového a síťového připojení v OS X, což je bezplatná, ale vynikající aplikace třetí strany, která běží v grafickém uživatelském rozhraní a je o něco snazší analyzovat, zejména pokud nemáte zkušenosti s terminál.