Netstat

Netstat — каманда unix і Windows для прагляду сеткавай статыстыкі прыёму/перадачы інфармацыі

 Сінтаксіс 
 netstat [-Aan] [-f сямейства_адрасоў] [-I інтэрфейс] [-p імя_пратакола] [сістэма] [core] 
 netstat [-n] [-s] [-i | -r] [-f сямейства_адрасоў] [-I інтэрфейс] [-p імя_пратакола] [сістэма] [core] 
 netstat [-n] [-I інтэрфейс] інтэрвал [сістэма] [core]

 Апісанне 
Каманда netstat паказвае змест розных структур даных, звязаных з сеткай, у разнастайных фарматах у залежнасці ад вызначаных опцый.

 Выкарыстанне 
Першая форма каманды паказвае спіс актыўных сокетаў (sockets) для кожнага пратакола. Другая форма абірае адну з некалькіх іншых сеткавых структур даных. Форма паказвае дынамічную статыстыку перасылкі пакетаў па сканфігураваным сеткавым інтэрфейсам; аргумент інтэрвал задае, колькі секунд збіраецца інфармацыя паміж паслядоўнымі паказамі.

Значэнне па змоўчванню для аргумента сістэма — /unix; для аргумента core у якасці значэння па змоўчванню ужываецца /dev/kmem.

 Опцыі 
+ -a Паказваць стан усіх сокетаў; звычайна сокеты, ужываемыя сервернымі працэсамі, не паказваюцца. -A Паказваць адрасы любых кіруючых блокаў пратакола, звязаных з сокетамі; выкарыстоўваецца для адладкі. -i Паказваць стан аўтаматычна сканфігураваных (auto-configured) інтэрфейсаў. ІНтэрфейсы, статычна сканфігураваныя ў сістэме, але не знойдзеныя падчас загрузкі, не паказваюцца. -n Паказваць сеткавыя адрасы як лікі. netstat звычайна паказвае адрасы як сімвалы. Гэтую опцыю можна ужываць з любым фарматам паказу. -r Паказаць табліцы маршрутызацыі. Пры ўжыванні з опцыяй -s, паказвае статыстыку маршрутызацыі. -s Паказаць статыстычную інфармацыю па пратаколам. Пры ўжыванні з опцыяй -r, паказвае статыстыку маршрутызацыі. -f сямейства_адрасоў Абмежаваць паказ статыстыкі ці адрасоў кіруючых блокаў толькі пазначаным сямействам_адрасоў, у якасці якога можна ўказваць:
inet Для сямейства адрасоў AF_INET, ці unix для сямейства адрасоў AF_UNIX. -I інтэрфейс Вылучыць інфармацыю аб пазначаным інтэрфейсе ў асабісты слупок; па змоўчванню (для трэцяй формы каманды) ужываецца інтэрфейс з найбольшым аб'ёмам пераданай інфармацыі з моманту апошняй перазагрузкі сістэмы. У якасці інтэрфейса можна ўказваць любы з інтэрфейсаў, пералічаных у файле канфігурацыі сістэмы, напрыклад, emd1 ці lo0. -p Друкаваць ідэнтыфікатар/назву працэса, які стварыў сокет (-p, --programs display PID/Program name for sockets)+

 Адлюстроўваемая інфармацыя 
Актыўныя сокеты

Для кожнага актыўнага сокета паказваецца пратакол, памер чэргаў прыёму і атрымання (у байтах), лакальны і аддалены адрас, а таксама унутраны стан пратакола.
Сімвальны фармат, які звычайна ужываецца для паказу адрасоў сокетаў, гэта альбо:
 імя_хаста.порт

калі імя хаста указана, альбо:
 сетка.порт

калі адрас сокета задае сетка, але не дакладны хост. Імёны хастоў і сетак бяруцца з адпаведных запісаў у файле /etc/hosts ці /etc/networks.

Калі імя сеткі ці хаста для адраса невядома (ці калі ўказана опцыя -n), адрас адлюстроўваецца лічбамі. Не ўказаныя ці «абагульненыя» адрасы і парты паказваюцца як «*». Падрабязней аб пагадненнях па іменаванню ў Internet гл. старонку дапаможніка inet.

Сокеты TCP

Для сокетаў TCP дапушчальны наступныя значэнні стану:
+CLOSEDЗачынены. Сокет не выкарыстоўваецца.LISTENЧакае ўваходзячых злучэнняў.SYN_SENTАктыўна спрабуе ўсталяваць злучэнне.SYN_RECEIVEDІдзе пачаткова сінхранізацыя злучэння.ESTABLISHEDЗлучэнне ўсталявана.CLOSE_WAITАддалены бок адключыўся; чаканне зачынення сокета.FIN_WAIT_1Сокет зачынены; адключэнне злучэння.CLOSINGСокет зачынены, потым аддалены бок будзе адключаны; чаканне пацверджання.LAST_ACKАддалены бок адключаны, потым сокет будзе зачынены; чаканне пацверджання.FIN_WAIT_2Сокет зачынены; чаканне адключэння аддаленага боку.TIME_WAITСокет зачынены, але чакае пакеты, якія знаходзяцца ў сетцы для апрацоўкі+

Сеткавыя структуры даных

Адлюстроўваемыя даныя залежаць ад выбару опцыі, -i альбо -r. Калі абраны абедзве опцыі, netstat выбірае -i.

Паказ табліцы маршрутызацыі

Табліца маршрутызацыі паказвае ўсе маршруты (routes) і статус кожнага з іх. Кожны маршрут складаецца з мэтавага хаста ці сеткі і шлюза (gateway), які ўжываецца для перасылкі пакетаў. Стаўбец flags (флагі) паказвае стан маршрута (U, калі ён уключаны), ці вядзе маршрут на шлюз (G), ці быў створаны маршрут дынамічна з дапамогай перанакіравання (D) і ці ўжываецца адрас індывідуальнага хаста (H) замест адраса сеткі. Напрыклад, інтэрфейс кальцавання (loopback transport provider), lo0, заўсёды мае флаг H.

Прамыя маршруты ствараюцца для кожнага інтэрфейса, далучанага да лакальнага хаста; поле gateway (шлюз) для такіх запісаў паказвае адрас выходзячыга інтэрфейса.

Стаўбец refcnt паказвае бягучую колькасць актыўных ужыванняў для маршрута. Пратаколы, арыентаваныя на злучэнне, звычайна ўжываюць падчас злучэння адзін маршрут, тады як пратаколы без злучэння атрымоўваюць маршрут для кожнай пасылкі аднаму і таму ж адрасату.

Слупок use паказвае колькасць пакетаў, пасланых па маршруту.

Слупок interface паказвае сеткавы інтэрфейс, які ўжываецца маршрутам.

Агульная статыстыка перадачы даных

Калі зададзены аргумент інтэрвал, netstat паказвае табліцу сумарнай статыстычнай інфармацыі аб пераданых пакетах, памылках і калізіях. Першы паказваемы радок, а таксама кожны наступны 24-ы радк утрымлівае агульную статыстычную інфармацыю з моманту апошняй перазагрузкі сістэмы. Кожны наступны радок паказвае даныя, сабраныя за чарговы інтэрвал з моманту апошняга паказу.

 Папярэджанні 
Табліцы ядра могуць змяняцца падчас іх апрацоўкі праграмай netstat, што вядзе да адлюстроўвання некарэктных ці няпоўных вынікаў.

 Гл. таксама 
 hosts
 networks
 protocols
 services
 trpt

 Спасылкі 
 Проект OpenNet
 FreeBSD System Manager's Manual

Катэгорыя:Unix
Катэгорыя:Узаемадзеянне і службы Windows
Катэгорыя:Сеткавае праграмнае забеспячэнне
Катэгорыя:Аналіз камп’ютарных сетак
Катэгорыя:Адміністраванне камп’ютарных сетак