📄 0560daemons.htm
字号:
port 的程序呢( PID )!好了,那么我们就来试看看这个指令的用法吧!<ul><li><a name="netstat"></a><b><font color="#000099">netstat</font></b></li><br> <table bgcolor="#000000" border="1" cols="1" width="700"><tbody><tr><td><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]#</font><font color="#ffff00"> netstat [-r] [-i interface] </font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]# </font><font color="#ffff00">netstat [-antulp] </font></font><br><font size="-1" color="#ffffcc" face="SimSun">参数说明: </font><br><font size="-1" color="#ff9900" face="SimSun">-r  :显示出route 的意思; </font><br><font size="-1" color="#ff9900" face="SimSun">-i  :显示出interface 的内容,跟 ifconfig 类似啦! </font><br><font size="-1" color="#ff9900" face="SimSun">-a  :显示出目前所有的网络联机状态! </font><br><font size="-1" color="#ff9900" face="SimSun">-n  :预设情况中,显示出的host 会以 host name 来显现,若为 n 则可以使 port 与 host 都以数字显示 </font><br><font size="-1" color="#ff9900" face="SimSun">-t  :仅显示tcp 封包的联机行为 </font><br><font size="-1" color="#ff9900" face="SimSun">-u  :仅显示udp 的封包联机状态 </font><br><font size="-1" color="#ff9900" face="SimSun">-l  :仅显示LISTEN 的内容 </font><br><font size="-1" color="#ff9900" face="SimSun">-p  :同时显示此一联机的PID 喔!(注意:只有 root 才能行使此功能!) </font><br><font size="-1" color="#ffffcc" face="SimSun">范例: </font><br><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]# </font><font color="#ffff00">netstat -r</font><font color="#ffffff"></font><font color="#ff9900"><==嘿嘿!显示出目前的路由表! </font></font><br><font size="-1" color="#ffffff" face="SimSun">Kernel IP routingtable </font><br><font size="-1" color="#ffffff" face="SimSun">Destination    Gateway         Genmask        Flags   MSS Window  irtt Iface </font><br><font size="-1" color="#ffffff" face="SimSun">140.116.141.253*              255.255.255.255 UH       40 0         0 ppp0 </font><br><font size="-1" color="#ffffff" face="SimSun">192.168.1.0    *              255.255.255.0   U        400          0 eth0 </font><br><font size="-1" color="#ffffff" face="SimSun">192.168.0.0    *              255.255.255.0   U        400          0 eth0 </font><br><font size="-1" color="#ffffff" face="SimSun">127.0.0.0      *              255.0.0.0       U       40 0          0 lo </font><br><font size="-1" color="#ffffff" face="SimSun">default        140.116.141.253 0.0.0.0        UG       40 0         0 ppp0 </font><p><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]# </font><font color="#ffff00">netstat -i eth0</font><font color="#ffffff"> </font><font color="#ffff00"><==看看底下显示出的内容,是否跟 ifconfig eth0 类似呀!? </font></font><br><font size="-1" color="#ffffff" face="SimSun">Kernel Interfacetable </font><br><font size="-1" color="#ffffff" face="SimSun">Iface  MTU Met   RX-OK RX-ERR RX-DRP RX-OVR   TX-OK TX-ERRTX-DRP TX-OVR Flg </font><br><font size="-1" color="#ffffff" face="SimSun">eth0  1500   077199373      0     0      169616342     0      0      0 BMRU </font><br><font size="-1" color="#ffffff" face="SimSun">lo   16436   0 1130485      0     0      0 1130485     0      0      0 LRU </font></p><p><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]# </font><font color="#ffff00">netstat -an </font><font color="#ff9900"><==显示所有的联机状态,并且以数字型态显示 </font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]#</font><font color="#ffff00"> netstat -tul</font><font color="#ff9900"><==显示LISTEN 的及 tcp 与 udp 的联机状态,如下: </font></font><br><font size="-1" color="#ffffff" face="SimSun">Active Internetconnections (only servers) </font><br><font size="-1" color="#ffffff" face="SimSun">Proto Recv-QSend-Q Local Address          Foreign Address         State </font><br><font size="-1" color="#ffffff" face="SimSun">tcp       0      0 *:mysql                *:*                    LISTEN </font><br><font size="-1" color="#ffffff" face="SimSun">tcp       0      0 *:netbios-ssn          *:*                    LISTEN </font><br><font size="-1" color="#ffffff" face="SimSun">tcp       0      0 *:pop3                 *:*                    LISTEN </font><br><font size="-1" color="#ffffff" face="SimSun">tcp       0      0 *:http                 *:*                    LISTEN </font><br><font size="-1" color="#ffffff" face="SimSun">tcp       0      0 *:ftp                  *:*                    LISTEN </font><br><font size="-1" color="#ffffff" face="SimSun">tcp       0      0 *:ssh                  *:*                    LISTEN </font><br><font size="-1" color="#ffffff" face="SimSun">tcp       0      0 *:smtp                 *:*                    LISTEN </font><br><font size="-1" color="#ffffff" face="SimSun">udp       0      0 *:netbios-ns           *:* </font><br><font size="-1" color="#ff9900" face="SimSun">注意:上面的LISTEN 表示该 port 是已经在 监听 网络服务啦!而左边的 tcp 指的是 tcp 封包! </font></p><p><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]# </font><font color="#ffff00">netstat -anp | more</font><b><font color="#ff9900"><==这个指令很常下达!请记得呦!</font></b></font><br> </p></td></tr></tbody></table> <br>netstat 可是很了不起的指令,一定要学会的!尤其他可以让我们了解目前的你的主机的联机状态!与开启的port 有哪些!所以一定得学会才行呀!如果你分别下达:<br> <ul><font color="#000066" face="SimSun">netstat -a  | more</font><br><font color="#000066" face="SimSun">netstat -an | more</font></ul> <br>一定会发现有点奇怪?怎么有的 port 会以服务名称(例如上面例子里的 pop3...)有的会以 port 号码来显示呢!?嘿嘿!那就是 /etc/services 以及 -n 这个参数的用途啦!你可以发现的是,如果netstat -a 时,显示出来的 port 号码在 /etc/services 存在对应的服务名称的时候,那么预设他就会显示出该服务名称啦!但是若在/etc/services 找不到档案的话,那么自然就还是以 port 号码来显示的!那么加上了-n 参数后,不论如何,他都会以 port 及 IP 来显示啦!<br> <br>另外,那个 -p 也很有用呦!尤其是在一些莫名其妙的联机出现时,可以用netstat –anp | more查到 PID ,然后再以我们之前谈到的 系统资源管理 部分,利用kill 来杀掉该 PID 的程序! 此外,使用 netstat –tlp 也可以得到目前在 LISTEN的 port 的服务名称,嘿嘿!那样就可以知道该 port 是那个程序来启动的!很便利ㄋㄟ?<br> <ul><li><font color="#000099">Proto</font>:指的是封包或者是通讯协议啦! tcp ,udp 是常见的呦!</li><li><font color="#000099">Local Address</font>:本地端的 IP 与 Port 号,如果/etc/services 存在对应服务名称,就以服务名称显示;</li><li><font color="#000099">Foreign Address</font> :监听哪一个地区与 port ;</li><li><font color="#000099">state</font>:状态列就很多啦!基本的有:</li><ul><li><font color="#000066">LISTEN </font>:亦即监听状态中的 port !</li><li><font color="#000066">ESTABLISHED</font>:已建立联机的联机情况</li><li><font color="#000066">TIME_WAIT</font>:该联机在目前已经是等待的状态了!随时有可能会断线呦!</li></ul></ul> <br>善用 netstat 可以查得相当多的网络信息!尤其在关闭本机的 port 时!假设我要将ftp 关闭掉,那么要使用 <a href="http://linux.vbird.org/linux_basic/0550setup.php#ntsysv">ntsysv</a>, <a href="http://linux.vbird.org/linux_basic/0550setup.php#chkconfig">chkconfig</a>以及看一下 /etc/rc.d/rc.local 里头的设定啰!请注意,这个时候仅是将『<b><font color="#000066">开机预设启动关闭』</font></b>而已,并没有实际关闭目前的服务,假设您发现ftp 还在启动的项目,你要将他关闭,那么就必须: </ul></blockquote><blockquote><ol><ol><li><font color="#000066" face="SimSun">使用 ntsysv 或 chkconfig 将 wu-ftpd前面的符号关闭掉;</font></li><li><font color="#000066" face="SimSun">跳出之后,以 /etc/rc.d/init.d/xinetrestart 或者是 service xinet restart 来重新启动 xinet 这个服务;</font></li><li><font color="#000066" face="SimSun">再以 netstat -a | more 看一下ftp 是否还在 LISTEN 呢?</font></li></ol> <br>这样才能关闭呢!同理可证啰!要关闭 sshd 怎么关?!嘿嘿!自己测试看看啰!(<i><font color="#000066">注意:事实上,在Linux 系统中,要『开或关某个 port 』,就是需要『启动或关闭某个服务』啦!因此,你可以找出某个port 对应的服务,程序对应的服务,进而启动或关闭他,那么那个经由该服务而启动的port ,自然就会关掉了!</font></i>)</ol></blockquote><hr width="100%"><a name="illustrations"></a><font size="+1" color="#000099">各个服务的简单说明</font><blockquote>底下是一些 linux 系统上面常见的 daemons ,大家可以参考看看呦!<br> <table border="1" cols="2" width="700"><tbody><tr><td bgcolor="#ffcccc" width="150"><center>服务名称</center></td><td bgcolor="#ffcccc" width="550"><blockquote><li>参数档</li><li>预设使用 port 号</li><li>说明</li><li>是否需要执行</li></blockquote></td></tr><tr><td><center>anacron</center></td><td><blockquote><li><b>/etc/anacrontab</b></li><li>没有使用 port 号</li><li>当你的
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -