netstat टिप्स और ट्रिक्स


13

"उपयोगी कमांड-लाइन" प्रश्नों ( विंडोज , लिनक्स , और मैक के लिए ) के रूप में एक ही नस में , मुझे लगता है कि उपयोगिता एक्स के सवालों के "उपयोगी तरीके" रखना आसान होगा। मैन पेज आपको बताते हैं कि पैरामीटर क्या करते हैं, लेकिन जरूरी नहीं कि आप उनका उपयोग क्यों करें, परिणाम का क्या मतलब है, कमांड क्या उपयोगी चीजें करता है जो आप कभी भी व्यापक प्रयोग के बिना नहीं जानते होंगे, या आप वास्तव में चाहते हैं कि उत्तर कैसे प्राप्त करें।

मैं netstat के बारे में जानना चाहूंगा । ऐसा प्रतीत होता है कि मुझे यह पता लगाने में सक्षम होना चाहिए कि कौन सी प्रक्रियाएं बैंडविड्थ का उपयोग कर रही हैं, और वास्तव में, सिस्टम कितनी तेजी से बैंडविड्थ का उपयोग कर रहा है। यह अवांछित कनेक्शन (संभावित virii) का पता लगाने के लिए भी उपयोगी है, और यह सभी प्रकार की रूटिंग जानकारी देता है (कि मुझे केवल तभी खेलना था जब एक तीव्र ज़ौरस पीडीए यूएसबी पर टीसीपी / आईपी का उपयोग करने की कोशिश कर रहा था।) दूसरे शब्दों में, यह एक सोने की खान की तरह लगता है, और मुझे आशा थी कि आप में से कुछ लोग आपके द्वारा पाई गई जानकारी की डली साझा करेंगे।

कृपया अपने उत्तर में netstat और अपने OS का संस्करण शामिल करें। यह अच्छा होगा कि कुछ नमूना आउटपुट देखें और जानें कि इसका क्या मतलब है। मैंने इस प्रश्न को समुदाय विकि के रूप में चिह्नित किया है, और मुझे आशा है कि आप अपने उत्तरों में भी ऐसा ही करेंगे, ताकि अन्य लोग, एक भिन्न OS को जानकर, यदि वे एक ही उत्तर में, समतुल्य समतुल्य कमांड को नीचे रख सकें, और फिर हम वोट कर सकते हैं कि कौन से उत्तर सबसे उपयोगी हैं।

जवाबों:


4

स्थानीय श्रवण टीसीपी / यूडीपी पोर्ट दिखाएं, और वे जिस प्रक्रिया से संबंधित हैं:

sudo netstat -tulpn

4
मैक के समतुल्य "sudo lsof -i -n -P | grep LISTEN" प्रतीत होता है। (ओम-एन-एन और-पी झंडे इसे होस्ट और पोर्ट नाम दिखाई देंगे)।
क्लिंटन ब्लैकमोर

1
क्लिंटन - वह एक शानदार कमान है।
स्पेसमैनस्पीफ

3

नेस्टैट रूटिंग टेबल

[यह मैक ओएस एक्स 10.5.7 पर परीक्षण किया गया था। मुझे संदेह है कि परिणाम सभी प्लेटफार्मों पर लगभग समान है, क्योंकि यह सोलारिस पर काम करने के लिए संकेत दिया गया था।]

netstat -r 

आपको एक रूटिंग टेबल देगा।

netstat -nr

वही है, लेकिन आपको मशीन के नाम देखने के बजाय कच्चा आईपी देंगे। इसका आउटपुट इस तरह दिखता है (केवल लंबा):

Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            192.168.40.250     UGSc       19        1    en1
127                127.0.0.1          UCS         0        0    lo0
127.0.0.1          127.0.0.1          UH          1     3140    lo0
169.254            link#5             UCS         0        0    en1
169.254.33.92      127.0.0.1          UHS         0        0    lo0
192.168.40         link#5             UCS        11        0    en1
192.168.40.1       0:17:f2:ca:a0:94   UHLW        0        0    en1   1150
...

Internet6:
Destination                             Gateway                         Flags      Netif Expire
::1                                     link#1                          UHL         lo0
fe80::%lo0/64                           fe80::1%lo0                     Uc          lo0
fe80::1%lo0                             link#1                          UHL         lo0
fe80::%en0/64                           link#4                          UC          en0
...
ff02::/32                               link#7                          UC          en2
ff02::/32                               link#8                          UC          en3

कॉलम:

गंतव्य और गेटवे: गंतव्य एक पता (या पता श्रेणी) है जिसे हम सूचना भेजना चाहते हैं। उस गंतव्य को भेजे गए सभी डेटा संबद्ध गेटवे पर जाएंगे। गेटवे जानता है कि यात्रा पर अपनी अगली 'हॉप' के लिए डेटा कहां भेजा जाए। यदि हम एक गंतव्य के लिए डेटा भेजना चाहते हैं जिसमें राउटिंग टेबल में कोई प्रविष्टि नहीं है, तो यह डिफ़ॉल्ट गेटवे के माध्यम से जाएगा।

झंडे: आदमी / जानकारी पृष्ठ सभी झंडों को सूचीबद्ध करता है। यहाँ मेरे डिफ़ॉल्ट गेटवे पर सेटिंग्स क्या हैं:

UGSc
U       - RTF_UP           Route usable
 G      - RTF_GATEWAY      Destination requires forwarding by intermediary
  S     - RTF_STATIC       Manually added
   c    - RTF_PRCLONING    Protocol-specified generate new routes on use

यह उत्सुक है कि यह डीएचसीपी के ऊपर आते ही मैन्युअल रूप से जोड़े जाने का दावा करता है।

रेफ्स : "रिफेंक्ट फ़ील्ड रूट के सक्रिय उपयोगों की वर्तमान संख्या देता है। कनेक्शन उन्मुख प्रोटोकॉल आम तौर पर कनेक्शन की अवधि के लिए एक ही मार्ग पर पकड़ते हैं, जबकि कनेक्शन रहित प्रोटोकॉल एक ही गंतव्य पर भेजते समय एक मार्ग प्राप्त करते हैं।" (मैन पेज)

उपयोग करें: "उपयोग फ़ील्ड उस मार्ग का उपयोग करके भेजे गए पैकेट की संख्या की एक संख्या प्रदान करता है।"

Netif: "इंटरफ़ेस प्रविष्टि मार्ग के लिए उपयोग किए जाने वाले नेटवर्क इंटरफ़ेस को इंगित करता है।"

मेरे मैक पर,

  • lo0 लूपबैक इंटरफ़ेस है।
  • en0 ईथरनेट है।
  • en1 वायरलेस है।
  • en2 और en3 का उपयोग वर्चुअल मशीन द्वारा किया जाता है।

समय सीमा समाप्त: नेटस्टैट के एक अलग संस्करण के लिए एक मैनपेज से: "मार्ग समाप्त होने से पहले शेष समय (मिनट में) प्रदर्शित करता है।"



2

खिड़कियों में:

c:>netstat -a | find /c "TCP"
68

टीसीपी / आईपी कनेक्शन की संख्या दिखाता है। उपयोगी यदि आप उच्च नेटवर्क सिस्टम का समस्या निवारण कर रहे हैं जो कि टीसीपी पोर्ट से बाहर चल रहे हैं और MaxUserPorts को बढ़ाने की आवश्यकता है ।


OS X 10.5.7 समान: netstat -a | grep -c tcp
क्लिंटन ब्लैकमोर

2

ट्रांसमिशन / रिसेप्शन की दर

Mac [OS X 10.5.7] पर:

netstat -i -w 10

[ सोलारिस और लिनक्स पर उपयोग के बारे में चक के जवाब देखें ।]

आउटपुट ऐसा दिखता है:

            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
       794     0    1166796        763     0      50358     0
       789     0    1167773        765     0      52542     0
       792     0    1166548        765     0      51174     0
       796     0    1167262        598     0      40152     0
       929     0    1278561        846     0      65625     0
       563     0     815570        530     0      36828     0
        32     0       4360          1     0        774     0
         9     0        705          0     0        684     0
         9     0        631          0     0          0     0

इससे पता चलता है कि समय के अंतराल में कितने पैकेट और बाइट हस्तांतरित किए गए थे। (इस उदाहरण में 10 सेकंड)। मैं youtube से जुड़ा था और हर अंतराल पर 1 एमबी से अधिक डाउनलोड कर रहा था, जब तक कि मैंने ब्राउज़र टैब को बंद नहीं कर दिया और दर नीचे की ओर बढ़ गई।

यह उपयोगी साबित हो सकता है अगर आप एक अपलोड या डाउनलोड के लिए इंतजार कर रहे हैं। दर की निगरानी करें, और जब यह नाटकीय रूप से गिरता है, तो आप जानते हैं कि यह किया जाता है।

ध्यान दें कि ऊपर दिया गया आदेश आपको सभी इंटरफ़ेस पर सभी थ्रूपुट दिखाता है। इसे किसी विशेष इंटरफ़ेस (इस उदाहरण में WiFi) में स्कोप करने के लिए, -Iध्वज का उपयोग करें , जैसे:

netstat -I en1 -w 10

1

खिड़कियाँ:

Netstat -n
(Show active TCP connections, don't slow down trying to do name resolution)

Proto  Local Address          Foreign Address        State
TCP    192.168.1.38:4853    69.59.196.212:80       ESTABLISHED

सक्रिय टीसीपी कनेक्शन दिखाता है, लेकिन कोई यूडीपी गतिविधि नहीं।

Netstat -an
  (Show all connections, don't slow down trying to do name resolution)

Proto  Local Address          Foreign Address        State
TCP    0.0.0.0:80             0.0.0.0:0              LISTENING
TCP    192.168.1.38:4853    69.59.196.212:80       ESTABLISHED

सभी सक्रिय टीसीपी कनेक्शन दिखाता है, साथ ही टीसीपी और यूडीपी कनेक्शन भी सुनता है। यहां आउटबाउंड यूडीपी गतिविधि नहीं दिखाता है।


मैं अभी के लिए एक टिप्पणी जोड़ूंगा, लेकिन जब मेरे पास पर्याप्त प्रतिनिधि होंगे, तो मैं उत्तर को संपादित करूंगा। मैक ओएस एक्स 10.5.7 के बराबर नेटस्टैट - एड-पी टीसीपी ताकि यह टीसीपी प्रोटोकल तक सीमित हो। अर्थात। netstat -p tcp -n, याnetstat -p tcp -an
क्लिंटन ब्लैकमोर

विंडोज पर स्विच के एक और उपयोगी जोड़े हैं -o (प्रत्येक सॉकेट के मालिक पीआईडी ​​दिखाएं) और -b (प्रत्येक सॉकेट के मालिक की प्रक्रिया का नाम दिखाएं)। विशेष रूप से आसान है जब जांच की गई मशीनों पर आपको संदेह है।
मुरली सूरी

netstat -nt एक ही चीज़ (केवल संख्यात्मक और tcp) करता है
Jauder Ho

1

खिड़कियाँ

netstat -b

कनेक्शन का उपयोग करके प्रक्रिया प्रदर्शित करें


1

विंडोज 7 (संभवतः पहले से, हालांकि):

netstat -ano

संबद्ध पीआईडी ​​के साथ सक्रिय सत्रों को सूचीबद्ध करता है

Active Connections

  Proto  Local Address          Foreign Address        State           PID
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       776
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING       4
  TCP    0.0.0.0:554            0.0.0.0:0              LISTENING       1724

या एक कदम बचाने के लिए

netstat -anb

(एक उन्नत CMD संकेत से) प्रक्रिया का नाम देता है

Active Connections

  Proto  Local Address          Foreign Address        State
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING
  RpcSs
 [svchost.exe]
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
 Can not obtain ownership information
  TCP    0.0.0.0:554            0.0.0.0:0              LISTENING
 [wmpnetwk.exe]
  TCP    0.0.0.0:2048           0.0.0.0:0              LISTENING

1

मुझे यकीन है कि मैं पहिया को फिर से मजबूत कर रहा हूं, लेकिन यहां नेटस्टैट चलाने और आउटपुट को सॉर्ट करने के लिए एक सरल पर्ल स्क्रिप्ट है ताकि आईपी वर्तमान में ज्यादातर जुड़े हुए शीर्ष पर बाहर आ जाएं। यह 2-सेकंड के अंतराल में अद्यतन के लिए 'घड़ी' कार्यक्रम के साथ सबसे अच्छा उपयोग किया जाता है।

अपडेट: कई समस्याओं से छुटकारा पाने और होस्टनाम प्रदर्शित करने के लिए महत्वपूर्ण 2013-02-11 को फिर से लिखें

नमूना उत्पादन:

Distant inbound connections: 2
   85.93.216.17:772               <-- 78.141.139.10       :    1        ip-78-141-139-10.dyn.luxdsl.pt.lu     1 x ESTABLISHED
   80.90.47.155:443               <-- 78.141.139.10       :    1        ip-78-141-139-10.dyn.luxdsl.pt.lu     1 x ESTABLISHED
Distant outbound connections: 3
   80.90.63.61                    --> 80.90.63.48:25      :    2        smtp.m-plify.net                      2 x TIME_WAIT
   85.93.216.17                   --> 85.93.216.18:772    :    1        maya.m-plify.net                      1 x ESTABLISHED
Looping connections: 57 (10 duplicates)
   127.0.0.1                      --> 127.0.0.1:9355      :   20                                              1 x ESTABLISHED, 8 x TIME_WAIT, 11 x CLOSE_WAIT
   127.0.0.1                      --> 127.0.0.1:4713      :   10                                             10 x CLOSE_WAIT
   127.0.0.1                      --> 127.0.0.1:9353      :    9                                              4 x TIME_WAIT, 5 x CLOSE_WAIT
   127.0.0.1                      --> 127.0.0.1:3306      :    8                                              6 x ESTABLISHED, 1 x TIME_WAIT, 1 x CLOSE_WAIT
   127.0.0.1                      --> 127.0.0.1:5445      :    5                                              1 x ESTABLISHED, 4 x TIME_WAIT
   127.0.0.1                      --> 127.0.0.1:9354      :    2                                              2 x CLOSE_WAIT
   127.0.0.1                      --> 127.0.0.1:7998      :    1                                              1 x TIME_WAIT
   127.0.0.1                      --> 127.0.0.1:3351      :    1                                              1 x ESTABLISHED
   127.0.0.1                      --> 127.0.0.1:32000     :    1                                              1 x ESTABLISHED


0

दुष्ट कूल शेल लिपियों की किताब से:

स्क्रिप्ट # 90.1 : हर 'एन' मिनट, netstats मान (crontab के माध्यम से) को पकड़ो

स्क्रिप्ट # 90.2 : नेटस्टैट रनिंग प्रदर्शन लॉग का विश्लेषण करें, महत्वपूर्ण परिणामों और रुझानों की पहचान करें।

(इस पुस्तक को प्यार करें - अच्छी तरह से खरीदने लायक!)


0

सोलारिस पर, बहुत से लोगों को "नेटस्टैट-आई 1" करने के लिए एक चल रहे पैकेट की गिनती प्राप्त करने के लिए उपयोग किया जाता है। लिनक्स नेटस्टैट में इस सुविधा का एक बेकार संस्करण है, क्योंकि यह आपको कच्चा गणना दिखाता है न कि डेल्टा। समान परिणाम प्राप्त करने के लिए, "sar -n DEV 1 0" करें। वास्तव में "LANG = C sar -n DEV 1 0 | grep interfacename" पर विचार करें (sar कुछ निश्चित स्थानों में लाइन की शुरुआत में AM और PM के साथ समय लगाता है, इसलिए हमेशा "LANG =" चलाने की आदत डालना सबसे अच्छा है। सी सर "मामले में आप कभी भी इसे पार्स करेंगे)।


नमूना आउटपुट और मैक उपयोग के लिए, serverfault.com/questions/11289/netstat-tips-and-tricks/… देखें ।
क्लिंटन ब्लैकमोर

0

सोलारिस पर,

netstat -k

विभिन्न आँकड़ों का सारांश दिखाता है। त्रुटियों आदि की जाँच के लिए उपयोगी।


0

चूंकि किसी ने अभी तक इसका उल्लेख नहीं किया है:

netstat -s 

लिनक्स के तहत प्रोटोकॉल द्वारा उपयोगी आंकड़ों का एक टन प्रदान करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.