اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

دستور netstat برای مدیریت شبکه در لینوکس

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    دستور netstat برای مدیریت شبکه در لینوکس

    دستور netstat یا network status در لینوکس یک وسیله برای مانیتور کردن کانکشن ها ورودی و خروجی, مشاهده جدول routing و وضعیت کارت شبکه است. این برنامه بر روی تمامی لینوکس ها و ویندوز وجود دارد. این برنامه برای رفع مشکل شبکه و اندازه گیری کارکرد شبکه مفید است. با این برنامه می توانیم بفهمیم که کدام پورت ها باز هستند و چه برنامه هایی در حال گوش کردن به این پورت ها هستند.


    در این مقاله یک سری از مثالهای کار کردن با این برنامه را مشاهده می کنیم که بسیار کاربردی هستند.


    1 - لیست کردن تمام پورت هایی که به کانکشنهای TCP و UDP

    با کامند زیر تمام پورت های TCP و UDP را به ما نشان می دهد.
    کد PHP:
    # netstat -a | more

    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State
    tcp        0      0 
    *:sunrpc                    *:*                         LISTEN
    tcp        0     52 192.168.0.2
    :ssh             192.168.0.1:egs             ESTABLISHED
    tcp        1      0 192.168.0.2
    :59292           www.gov.com:http            CLOSE_WAIT
    tcp        0      0 localhost
    :smtp              *:*                         LISTEN
    tcp        0      0 
    *:59482                     *:*                         LISTEN
    udp        0      0 
    *:35036                     *:*
    udp        0      0 *:npmp-local                *:*

    Active UNIX domain sockets (servers and established)
    Proto RefCnt Flags       Type       State         I-Node Path
    unix  2      
    ACC ]     STREAM     LISTENING     16972  /tmp/orbit-root/linc-76b-0-6fa08790553d6
    unix  2      
    ACC ]     STREAM     LISTENING     17149  /tmp/orbit-root/linc-794-0-7058d584166d2
    unix  2      
    ACC ]     STREAM     LISTENING     17161  /tmp/orbit-root/linc-792-0-546fe905321cc
    unix  2      
    ACC ]     STREAM     LISTENING     15938  /tmp/orbit-root/linc-74b-0-415135cb6aeab 


    2 - لیست کردن کانکشن های TCP
    کد PHP:
    # netstat -at

    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State
    tcp        0      0 
    *:ssh                       *:*                         LISTEN
    tcp        0      0 localhost
    :ipp               *:*                         LISTEN
    tcp        0      0 localhost
    :smtp              *:*                         LISTEN
    tcp        0     52 192.168.0.2
    :ssh             192.168.0.1:egs             ESTABLISHED
    tcp        1      0 192.168.0.2
    :59292           www.gov.com:http            CLOSE_WAIT 


    3 - لیست کردن کانکشن های UDP
    کد PHP:
    # netstat -au

    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State
    udp        0      0 
    *:35036                     *:*
    udp        0      0 *:npmp-local                *:*
    udp        0      0 *:mdns                      *:* 


    4 - لیست کردن تمام کانکشن ها با موقعیت LISTENING
    کد PHP:
     # netstat -l

    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State
    tcp        0      0 
    *:sunrpc                    *:*                         LISTEN
    tcp        0      0 
    *:58642                     *:*                         LISTEN
    tcp        0      0 
    *:ssh                       *:*                         LISTEN
    udp        0      0 
    *:35036                     *:*
    udp        0      0 *:npmp-local                *:*

    Active UNIX domain sockets (only servers)
    Proto RefCnt Flags       Type       State         I-Node Path
    unix  2      
    ACC ]     STREAM     LISTENING     16972  /tmp/orbit-root/linc-76b-0-6fa08790553d6
    unix  2      
    ACC ]     STREAM     LISTENING     17149  /tmp/orbit-root/linc-794-0-7058d584166d2
    unix  2      
    ACC ]     STREAM     LISTENING     17161  /tmp/orbit-root/linc-792-0-546fe905321cc
    unix  2      
    ACC ]     STREAM     LISTENING     15938  /tmp/orbit-root/linc-74b-0-415135cb6aeab 


    5 - لیست کردن تمام پورت های TCP با وضعیت Listening
    کد PHP:
    # netstat -lt

    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State
    tcp        0      0 
    *:dctp                      *:*                         LISTEN
    tcp        0      0 
    *:mysql                     *:*                         LISTEN
    tcp        0      0 
    *:sunrpc                    *:*                         LISTEN
    tcp        0      0 
    *:munin                     *:*                         LISTEN
    tcp        0      0 
    *:ftp                       *:*                         LISTEN
    tcp        0      0 localhost
    .localdomain:ipp   *:*                         LISTEN
    tcp        0      0 localhost
    .localdomain:smtp  *:*                         LISTEN
    tcp        0      0 
    *:http                      *:*                         LISTEN
    tcp        0      0 
    *:ssh                       *:*                         LISTEN
    tcp        0      0 
    *:https                     *:*                         LISTEN 

    6 - لیست کردن تمام پورت های UDP با وضعیت Listening
    کد PHP:
    # netstat -lu

    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State
    udp        0      0 
    *:39578                     *:*
    udp        0      0 *:meregister                *:*
    udp        0      0 *:vpps-qua                  *:*
    udp        0      0 *:openvpn                   *:*
    udp        0      0 *:mdns                      *:*
    udp        0      0 *:sunrpc                    *:*
    udp        0      0 *:ipp                       *:*
    udp        0      0 *:60222                     *:*
    udp        0      0 *:mdns                      *:* 


    7 - لیست کردن تمام پورت های listening توسط unix
    کد PHP:
     # netstat -lx

    Active UNIX domain sockets (only servers)
    Proto RefCnt Flags       Type       State         I-Node Path
    unix  2      
    ACC ]     STREAM     LISTENING     4171   @ISCSIADM_ABSTRACT_NAMESPACE
    unix  2      
    ACC ]     STREAM     LISTENING     5767   /var/run/cups/cups.sock
    unix  2      
    ACC ]     STREAM     LISTENING     7082   @/tmp/fam-root-
    unix  2      ACC ]     STREAM     LISTENING     6157   /dev/gpmctl
    unix  2      
    ACC ]     STREAM     LISTENING     6215   @/var/run/hald/dbus-IcefTIUkHm
    unix  2      
    ACC ]     STREAM     LISTENING     6038   /tmp/.font-unix/fs7100
    unix  2      
    ACC ]     STREAM     LISTENING     6175   /var/run/avahi-daemon/socket
    unix  2      
    ACC ]     STREAM     LISTENING     4157   @ISCSID_UIP_ABSTRACT_NAMESPACE
    unix  2      
    ACC ]     STREAM     LISTENING     60835836 /var/lib/mysql/mysql.sock
    unix  2      
    ACC ]     STREAM     LISTENING     4645   /var/run/audispd_events
    unix  2      
    ACC ]     STREAM     LISTENING     5136   /var/run/dbus/system_bus_socket
    unix  2      
    ACC ]     STREAM     LISTENING     6216   @/var/run/hald/dbus-wsUBI30V2I
    unix  2      
    ACC ]     STREAM     LISTENING     5517   /var/run/acpid.socket
    unix  2      
    ACC ]     STREAM     LISTENING     5531   /var/run/pcscd.comm 


    8 - نمایش وضعیت بر اساس پروتکل ها
    کد PHP:
    # netstat -s

    Ip:
        
    2461 total packets received
        0 forwarded
        0 incoming packets discarded
        2431 incoming packets delivered
        2049 requests sent out
    Icmp
    :
        
    0 ICMP messages received
        0 input ICMP message failed
    .
        
    ICMP input histogram:
        
    1 ICMP messages sent
        0 ICMP messages failed
        ICMP output histogram
    :
            
    destination unreachable1
    Tcp
    :
        
    159 active connections openings
        1 passive connection openings
        4 failed connection attempts
        0 connection resets received
        1 connections established
        2191 segments received
        1745 segments send out
        24 segments retransmited
        0 bad segments received
    .
        
    4 resets sent
    Udp
    :
        
    243 packets received
        1 packets to unknown port received
    .
        
    0 packet receive errors
        281 packets sent 


    9 - مشاهده وضعیت پروتکل TCP
    کد PHP:
    # netstat -st

    Tcp:
        
    2805201 active connections openings
        1597466 passive connection openings
        1522484 failed connection attempts
        37806 connection resets received
        1 connections established
        57718706 segments received
        64280042 segments send out
        3135688 segments retransmited
        74 bad segments received
    .
        
    17580 resets sent 


    10 - مشاهده وضعیت پروتکل UDP
    کد PHP:
    # netstat -su

    Udp:
        
    1774823 packets received
        901848 packets to unknown port received
    .
        
    0 packet receive errors
        2968722 packets sent 


    11 - نمایش نام سرویس با PID

    نمایش نام سرویس با استفاده از PID آن ها با استفاده از کامند زیر :
    کد PHP:
    # netstat -tp

    Active Internet connections (w/o servers)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
    tcp        0      0 192.168.0.2
    :ssh             192.168.0.1:egs             ESTABLISHED 2179/sshd
    tcp        1      0 192.168.0.2
    :59292           www.gov.com:http            CLOSE_WAIT  1939/clock-applet 


    12 - نمایش مد promiscuous

    نمایش مد promiscuous با سویچ ac- اطلاعات مربوطه را نشان می دهد و هر 5 ثانیه refresh می شود.
    کد PHP:
    # netstat -ac 5 | grep tcp

    tcp        0      0 *:sunrpc                    *:*                         LISTEN
    tcp        0      0 
    *:58642                     *:*                         LISTEN
    tcp        0      0 
    *:ssh                       *:*                         LISTEN
    tcp        0      0 localhost
    :ipp               *:*                         LISTEN
    tcp        0      0 localhost
    :smtp              *:*                         LISTEN
    tcp        1      0 192.168.0.2
    :59447           www.gov.com:http            CLOSE_WAIT
    tcp        0     52 192.168.0.2
    :ssh             192.168.0.1:egs             ESTABLISHED
    tcp        0      0 
    *:sunrpc                    *:*                         LISTEN
    tcp        0      0 
    *:ssh                       *:*                         LISTEN
    tcp        0      0 localhost
    :ipp               *:*                         LISTEN
    tcp        0      0 localhost
    :smtp              *:*                         LISTEN
    tcp        0      0 
    *:59482                     *:*                         LISTEN 


    13 - نشان دادن جدول routing مربوط به کرنل
    کد PHP:
    # netstat -r

    Kernel IP routing table
    Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
    192.168.0.0     
    *               255.255.255.0   U         0 0          0 eth0
    link
    -local      *               255.255.0.0     U         0 0          0 eth0
    default         192.168.0.1     0.0.0.0         UG        0 0          0 eth0 


    14 - مشاهده اینترفیس های شبکه و ترفیکی که ردوبدل می کنند
    کد PHP:
    # netstat -i

    Kernel Interface table
    Iface       MTU Met    RX
    -OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
    eth0       1500   0     4459      0      0      0     4057      0      0      0 BMRU
    lo        16436   0        8      0      0      0        8      0      0      0 LRU 


    15 - مشاهده اینترفیس های شبکه با جزییات
    کد PHP:
    # netstat -ie

    Kernel Interface table
    eth0      Link encap
    :Ethernet  HWaddr 00:0C:29:B4:DA:21
              inet addr
    :192.168.0.2  Bcast:192.168.0.255  Mask:255.255.255.0
              inet6 addr
    fe80::20c:29ff:feb4:da21/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU
    :1500  Metric:1
              RX packets
    :4486 errors:0 dropped:0 overruns:0 frame:0
              TX packets
    :4077 errors:0 dropped:0 overruns:0 carrier:0
              collisions
    :0 txqueuelen:1000
              RX bytes
    :2720253 (2.5 MiB)  TX bytes:1161745 (1.1 MiB)
              
    Interrupt:18 Base address:0x2000

    lo        Link encap
    :Local Loopback
              inet addr
    :127.0.0.1  Mask:255.0.0.0
              inet6 addr
    : ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU
    :16436  Metric:1
              RX packets
    :8 errors:0 dropped:0 overruns:0 frame:0
              TX packets
    :8 errors:0 dropped:0 overruns:0 carrier:0
              collisions
    :0 txqueuelen:0
              RX bytes
    :480 (480.0 b)  TX bytes:480 (480.0 b


    16 - مشاهده اطلاعات مربوط به ipv4 و ipv6
    کد PHP:
    # netstat -g

    IPv6/IPv4 Group Memberships
    Interface       RefCnt Group
    --------------- ------ ---------------------
    lo              1      all-systems.mcast.net
    eth0            1      224.0.0.251
    eth0            1      all
    -systems.mcast.net
    lo              1      ff02
    ::1
    eth0            1      ff02
    ::202
    eth0            1      ff02
    ::1:ffb4:da21
    eth0            1      ff02
    ::


    17 - مشاهده اطلاعات netstat به صورت پیوسته

    با دستور زیر این اطلاعات را می بینیم در حالی که هر چند ثانیه آپدیت می شوند :
    کد PHP:
    # netstat -c

    Active Internet connections (w/o servers)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State
    tcp        0      0 tecmint
    .com:http   sg2nlhg007.shr.prod.s:36944 TIME_WAIT
    tcp        0      0 tecmint
    .com:http   sg2nlhg010.shr.prod.s:42110 TIME_WAIT
    tcp        0    132 tecmint
    .com:ssh    115.113.134.3.static-:64662 ESTABLISHED
    tcp        0      0 tecmint
    .com:http   crawl-66-249-71-240.g:41166 TIME_WAIT
    tcp        0      0 localhost
    .localdomain:54823 localhost.localdomain:smtp  TIME_WAIT
    tcp        0      0 localhost
    .localdomain:54822 localhost.localdomain:smtp  TIME_WAIT
    tcp        0      0 tecmint
    .com:http   sg2nlhg010.shr.prod.s:42091 TIME_WAIT
    tcp        0      0 tecmint
    .com:http   sg2nlhg007.shr.prod.s:36998 TIME_WAIT 


    18 - مشاهده آدرس هایی که ساپورت نمی شوند
    کد PHP:
    # netstat --verbose

    netstatno support for `AF IPX' on this system.
    netstat: no support for 
    `AF AX25' on this system.
    netstat: no support for `AF X25' 
    on this system.
    netstatno support for `AF NETROM' on this system. 


    19 - مشاهده برنامه هایی که در حال listen کردن هستند
    کد PHP:
    # netstat -ap | grep http

    tcp        0      0 *:http                      *:*                         LISTEN      9056/httpd
    tcp        0      0 
    *:https                     *:*                         LISTEN      9056/httpd
    tcp        0      0 tecmint
    .com:http   sg2nlhg008.shr.prod.s:35248 TIME_WAIT   -
    tcp        0      0 tecmint.com:http   sg2nlhg007.shr.prod.s:57783 TIME_WAIT   -
    tcp        0      0 tecmint.com:http   sg2nlhg007.shr.prod.s:57769 TIME_WAIT   -
    tcp        0      0 tecmint.com:http   sg2nlhg008.shr.prod.s:35270 TIME_WAIT   -
    tcp        0      0 tecmint.com:http   sg2nlhg009.shr.prod.s:41637 TIME_WAIT   -
    tcp        0      0 tecmint.com:http   sg2nlhg009.shr.prod.s:41614 TIME_WAIT   -
    unix  2      [ ]         STREAM     CONNECTED     88586726 10394/httpd 


    20 - مشاهده اطلاعات خام
    کد PHP:
     # netstat --statistics --raw

    Ip:
        
    62175683 total packets received
        52970 with invalid addresses
        0 forwarded
    Icmp
    :
        
    875519 ICMP messages received
            destination unreachable
    901671
            
    echo request8
            
    echo replies16253
    IcmpMsg
    :
            
    InType083
    IpExt
    :
        
    InMcastPkts117 

    همچنین توصیه میشود مطالعه کنید :

    راهنمای جامع برای یک Sysadmin لینوکس به منظور مدیریت، عیب یابی و برطرف کردن مشکلات شبکه

    13 دستور پیکربندی و عیب یابی شبکه در لینوکس

    دستور ip برای تنظیمات اینترفیس شبکه به همراه 10 مثال عملی

    نحوه پیدا کردن پورت های باز در سرور لینوکس

    دستور ping به همراه 12 مثال عملی


    استفاده از آموزش های منطقه لینوکسی ها با کمی تغییر در عنوان و متن نوشته در سایت های مشابه به هیچ وجه مورد قبول منطقه لینوکسی ها نمی باشد.

    موفق باشید
    امیر جمشیدی جم
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 02-02-2021, 04:17 PM.
    اینستاگرام انجمن لینوکس ایران : https://www.instagram.com/iranlinuxforum

    #2
    سلام با استفاده از دستورات زیر هم میتوانید متوجه شوید که چه نرم افزارهایی یا اپلیکیشن هایی روی چه port هایی در حال listen کردن هستند.

    اگر بخواهیم ببینیم که چه اپلیکیشن ها یا نرم افزارهایی روی چه پورتی در حال listen کردن میباشند از دستور زیر استفاده کنید.
    کد PHP:
    [root@centos ~]# netstat -tulpn | grep nginx
    tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      20111/nginxmaster 
    [root@centos ~]
    [root@centos ~]# netstat -tulpn | grep varnishd
    tcp        0      0 127.0.0.1:37832         0.0.0.0:*               LISTEN      20362/varnishd      
    tcp        0      0 127.0.0.1
    :44202         0.0.0.0:*               LISTEN      18840/varnishd      
    tcp        0      0 0.0.0.0
    :80              0.0.0.0:*               LISTEN      20363/varnishd      
    tcp        0      0 0.0.0.0
    :6081            0.0.0.0:*               LISTEN      20133/varnishd      
    tcp        0      0 127.0.0.1
    :6082          0.0.0.0:*               LISTEN      20132/varnishd      
    tcp6       0      0 
    :::80                   :::*                    LISTEN      18841/varnishd      
    tcp6       0      0 
    ::1:38778               :::*                    LISTEN      18840/varnishd      
    tcp6       0      0 
    ::1:37339               :::*                    LISTEN      20362/varnishd      
    tcp6       0      0 
    :::6081                 :::*                    LISTEN      20133/varnishd      
    [root@centos ~]
    اگر بخواهیم ببینیم که چه پورت هایی روی چه روی چه اپلیکیشن های یا نرم افزارهایی در حال listen کردن میباشند از دستور زیر استفاده کنید. (برعکس دستور بالا)
    کد PHP:
    [root@centos ~]# netstat -tulpn | grep :80
    tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      20363/varnishd      
    tcp        0      0 0.0.0.0
    :8080            0.0.0.0:*               LISTEN      20111/nginxmaster 
    tcp6       0      0 
    :::80                   :::*                    LISTEN      18841/varnishd      
    [root@centos ~]
    آخرین ویرایش توسط amir; در تاریخ/ساعت 10-07-2017, 02:04 AM.

    من قلبی بزرگ با رویاهایی بزرگ دارم. دانسته هایمان را با هم به اشتراک بگذاریم.

    کامنت

    درباره انجمن منطقه لینوکسی ها

    انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

    شبکه های اجتماعی
    در حال انجام ...
    X