• 售前

  • 售后

热门帖子
入门百科

【每天一个 Linux 下令】网络干系下令(ifconfig、route、ping、traceroute

[复制链接]
碧雲居士 显示全部楼层 发表于 2022-1-16 21:12:30 |阅读模式 打印 上一主题 下一主题
文章目次



<code>ifconfig下令

许多windows非常熟悉ipconfig下令行工具,它被用来获取网络接口设置信息并对此举行修改。Linux体系拥有一个类似的工具,也就是<code>ifconfig(interfaces config)。通常必要以root身份登录或利用sudo以便在Linux呆板上利用<code>ifconfig工具。依赖于<code>ifconfig下令中利用一些选项属性,<code>ifconfig工具不但可以被用来简朴地获取网络接口设置信息,还可以修改这些设置。
1.下令格式:
<code>ifconfig [网络装备] [参数]
2.下令功能:
<code>ifconfig 下令用来检察和设置网络装备。当网络环境发生改变时可通过此下令对网络举行相应的设置。
3.下令参数:
  1. <code>up 启动指定网络设备/网卡。
  2. down 关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息流,如果想永久地关闭一个接口,我们还需要从核心路由表中将该接口的路由信息全部删除。
  3. arp 设置指定网卡是否支持ARP协议。
  4. -promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包
  5. -allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包
  6. -a 显示全部接口信息
  7. -s 显示摘要信息(类似于 <code><code>netstat -i)
  8. add 给指定网卡配置IPv6地址
  9. del 删除指定网卡的IPv6地址
  10. <硬件地址> 配置网卡最大的传输单元
  11. mtu<字节数> 设置网卡的最大传输单元 (bytes)
  12. netmask<子网掩码> 设置网卡的子网掩码。掩码可以是有前缀0x的32位十六进制数,也可以是用点分开的4个十进制数。如果不打算将网络分成子网,可以不管这一选项;如果要使用子网,那么请记住,网络中每一个系统必须有相同子网掩码。
  13. tunel 建立隧道
  14. dstaddr 设定一个远端地址,建立点对点通信
  15. -broadcast<地址> 为指定网卡设置广播协议
  16. -pointtopoint<地址> 为网卡设置点对点通讯协议
  17. multicast 为网卡设置组播标志
  18. address 为网卡设置IPv4地址
  19. txqueuelen<长度> 为网卡设置传输列队的长度
复制代码
<code>ifconfig下令利用示例

实例1:体现网络装备信息(激活状态的)
下令:
  1. <code>ifconfig
复制代码
输出:
  1. [root@localhost ~]# <code>ifconfigeth0   Link encap:Ethernet HWaddr 00:50:56:BF:26:20      inet addr:192.168.120.204 Bcast:192.168.120.255 Mask:255.255.255.0     UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1     RX packets:8700857 errors:0 dropped:0 overruns:0 frame:0     TX packets:31533 errors:0 dropped:0 overruns:0 carrier:0     collisions:0 txqueuelen:1000      RX bytes:596390239 (568.7 MiB) TX bytes:2886956 (2.7 MiB)lo    Link encap:Local Loopback      inet addr:127.0.0.1 Mask:255.0.0.0     UP LOOPBACK RUNNING MTU:16436 Metric:1     RX packets:68 errors:0 dropped:0 overruns:0 frame:0     TX packets:68 errors:0 dropped:0 overruns:0 carrier:0     collisions:0 txqueuelen:0      RX bytes:2856 (2.7 KiB) TX bytes:2856 (2.7 KiB)
复制代码
分析:
eth0 表现第一块网卡, 此中 HWaddr 表现网卡的物理地点,可以看到现在这个网卡的物理地点(MAC地点)是 00:50:56:BF:26:20
inet addr 用来表现网卡的IP地点,此网卡的 IP地点是 192.168.120.204,广播地点, Bcast:192.168.120.255,掩码地点Mask:255.255.255.0
lo 是表现主机的回坏地点,这个一样寻常是用来测试一个网络步伐,但又不想让局域网或外网的用户可以大概检察,只能在此台主机上运行和检察所用的网络接口。好比把 HTTPD服务器的指定到回坏地点,在欣赏器输入 127.0.0.1 就能看到你所架WEB网站了。但只是您能看得到,局域网的别的主机或用户无从知道。
第一行:毗连范例:Ethernet(以太网)HWaddr(硬件mac地点)
第二行:网卡的IP地点、子网、掩码
第三行:UP(代表网卡开启状态)RUNNING(代表网卡的网线被接上)MULTICAST(支持组播)MTU:1500(最大传输单元):1500字节
第四、五行:吸取、发送数据包环境统计
第七行:吸取、发送数据字节数统计信息。
实例2:启动关闭指定网卡
下令:
  1. <code>ifconfig eth0 up<code>ifconfig eth0 down
复制代码
输出:
分析:
<code>ifconfig eth0 up 为启动网卡eth0 ;<code>ifconfig eth0 down 为关闭网卡eth0。ssh登岸linux服务器利用要鉴戒,关闭了就不能开启了,除非你有多网卡。
实例3:为网卡设置和删除IPv6地点
下令:
  1. <code>ifconfig eth0 add 33ffe:3240:800:1005::2/64<code>ifconfig eth0 del 33ffe:3240:800:1005::2/64
复制代码
输出:
分析:
<code>ifconfig eth0 add 33ffe:3240:800:1005::2/64 为网卡eth0设置IPv6地点;
<code>ifconfig eth0 add 33ffe:3240:800:1005::2/64 为网卡eth0删除IPv6地点;
练习的时间,ssh登岸linux服务器利用要鉴戒,关闭了就不能开启了,除非你有多网卡。
实例4:用<code>ifconfig修改MAC地点
下令:
  1. <code><code>ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE
复制代码
输出:
  1. [root@localhost ~]# <code>ifconfig eth0 down //关闭网卡[root@localhost ~]# <code><code>ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE //修改MAC地点[root@localhost ~]# <code>ifconfig eth0 up //启动网卡[root@localhost ~]# <code>ifconfigeth0   Link encap:Ethernet HWaddr 00:AA:BB:CC:DD:EE      inet addr:192.168.120.204 Bcast:192.168.120.255 Mask:255.255.255.0     UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1     RX packets:8700857 errors:0 dropped:0 overruns:0 frame:0     TX packets:31533 errors:0 dropped:0 overruns:0 carrier:0     collisions:0 txqueuelen:1000      RX bytes:596390239 (568.7 MiB) TX bytes:2886956 (2.7 MiB)lo    Link encap:Local Loopback      inet addr:127.0.0.1 Mask:255.0.0.0     UP LOOPBACK RUNNING MTU:16436 Metric:1     RX packets:68 errors:0 dropped:0 overruns:0 frame:0     TX packets:68 errors:0 dropped:0 overruns:0 carrier:0     collisions:0 txqueuelen:0      RX bytes:2856 (2.7 KiB) TX bytes:2856 (2.7 KiB)[root@localhost ~]# <code>ifconfig eth0 hw ether 00:50:56:BF:26:20 //关闭网卡并修改MAC地点 [root@localhost ~]# <code>ifconfig eth0 up //启动网卡[root@localhost ~]# <code>ifconfigeth0   Link encap:Ethernet HWaddr 00:50:56:BF:26:20      inet addr:192.168.120.204 Bcast:192.168.120.255 Mask:255.255.255.0     UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1     RX packets:8700857 errors:0 dropped:0 overruns:0 frame:0     TX packets:31533 errors:0 dropped:0 overruns:0 carrier:0     collisions:0 txqueuelen:1000      RX bytes:596390239 (568.7 MiB) TX bytes:2886956 (2.7 MiB)lo    Link encap:Local Loopback      inet addr:127.0.0.1 Mask:255.0.0.0     UP LOOPBACK RUNNING MTU:16436 Metric:1     RX packets:68 errors:0 dropped:0 overruns:0 frame:0     TX packets:68 errors:0 dropped:0 overruns:0 carrier:0     collisions:0 txqueuelen:0      RX bytes:2856 (2.7 KiB) TX bytes:2856 (2.7 KiB)
复制代码
分析:
实例5:设置IP地点
下令:
输出:
  1. [root@localhost ~]# <code>ifconfig eth0 192.168.120.56 [root@localhost ~]# <code>ifconfig eth0 192.168.120.56 netmask 255.255.255.0 [root@localhost ~]# <code>ifconfig eth0 192.168.120.56 netmask 255.255.255.0 broadcast 192.168.120.255**分析:
复制代码
<code>ifconfig eth0 192.168.120.56
给eth0网卡设置IP地:192.168.120.56
<code>ifconfig eth0 192.168.120.56 netmask 255.255.255.0
给eth0网卡设置IP地点:192.168.120.56 ,并加上子掩码:255.255.255.0
<code>ifconfig eth0 192.168.120.56 netmask 255.255.255.0 broadcast 192.168.120.255
/给eth0网卡设置IP地点:192.168.120.56,加上子掩码:255.255.255.0,加上个广播地点: 192.168.120.255
实例6:*启用和关闭ARP协议
下令:
  1. <code>ifconfig eth0 arp<code>ifconfig eth0 -arp
复制代码
输出:
  1. [root@localhost ~]# <code>ifconfig eth0 arp [root@localhost ~]# <code>ifconfig eth0 -arp
复制代码
分析:
<code>ifconfig eth0 arp 开启网卡eth0 的arp协议;
<code>ifconfig eth0 -arp 关闭网卡eth0 的arp协议;
实例7:设置最大传输单元
下令:
  1. <code><code>ifconfig eth0 mtu 1500
复制代码
输出:
  1. [root@localhost ~]# <code>ifconfig eth0 mtu 1480[root@localhost ~]# <code>ifconfigeth0   Link encap:Ethernet HWaddr 00:50:56:BF:26:1F      inet addr:192.168.120.203 Bcast:192.168.120.255 Mask:255.255.255.0     UP BROADCAST RUNNING MULTICAST MTU:1480 Metric:1     RX packets:8712395 errors:0 dropped:0 overruns:0 frame:0     TX packets:36631 errors:0 dropped:0 overruns:0 carrier:0     collisions:0 txqueuelen:1000      RX bytes:597062089 (569.4 MiB) TX bytes:2643973 (2.5 MiB)lo    Link encap:Local Loopback      inet addr:127.0.0.1 Mask:255.0.0.0     UP LOOPBACK RUNNING MTU:16436 Metric:1     RX packets:9973 errors:0 dropped:0 overruns:0 frame:0     TX packets:9973 errors:0 dropped:0 overruns:0 carrier:0     collisions:0 txqueuelen:0      RX bytes:518096 (505.9 KiB) TX bytes:518096 (505.9 KiB)[root@localhost ~]# <code><code>ifconfig eth0 mtu 1500[root@localhost ~]# <code>ifconfigeth0   Link encap:Ethernet HWaddr 00:50:56:BF:26:1F      inet addr:192.168.120.203 Bcast:192.168.120.255 Mask:255.255.255.0     UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1     RX packets:8712548 errors:0 dropped:0 overruns:0 frame:0     TX packets:36685 errors:0 dropped:0 overruns:0 carrier:0     collisions:0 txqueuelen:1000      RX bytes:597072333 (569.4 MiB) TX bytes:2650581 (2.5 MiB)lo    Link encap:Local Loopback      inet addr:127.0.0.1 Mask:255.0.0.0     UP LOOPBACK RUNNING MTU:16436 Metric:1     RX packets:9973 errors:0 dropped:0 overruns:0 frame:0     TX packets:9973 errors:0 dropped:0 overruns:0 carrier:0     collisions:0 txqueuelen:0      RX bytes:518096 (505.9 KiB) TX bytes:518096 (505.9 KiB)[root@localhost ~]#
复制代码
分析:
设置能通过的最大数据包巨细为 1500 bytes
备注:用<code>ifconfig下令设置的网卡信息,在网卡重启后呆板重启后,设置就不存在。要想将上述的设置信息永世的存的电脑里,那就要修改网卡的设置文件了。
route下令语法

Linux体系的route下令用于体现和利用IP路由表(show / manipulate the IP routing table)。要实现两个差别的子网之间的通讯,必要一台毗连两个网络的路由器,大概同时位于两个网络的网关来实现。在Linux体系中,设置路由通常是为了办理以下题目:该Linux体系在一个局域网中,局域网中有一个网关,可以大概让呆板访问Internet,那么就必要将这台呆板的IP地点设置为Linux呆板的默认路由。要注意的是,直接在下令行下实验route下令来添加路由,不会永世生存,当网卡重启大概呆板重启之后,该路由就失效了;可以在/etc/rc.local中添加route下令来包管该路由设置永世有用。
**1.**下令格式:
route [-f] [-p] [Command [Destination] [mask Netmask] [Gateway] [metric Metric]] [if Interface]]
**2.**下令功能:
Route下令是用于利用基于内核ip路由表,它的告急作用是创建一个静态路由让指定一个主机大概一个网络通过一个网络接口,如eth0。当利用"add"大概"del"参数时,路由表被修改,如果没有参数,则体现路由表当前的内容。
**3.**下令参数:
  1. <code>-c 显示更多信息
  2. -n 不解析名字
  3. -v 显示详细的处理信息
  4. -F 显示发送信息
  5. -C 显示路由缓存
  6. -f 清除所有网关入口的路由表。
  7. -p 与 add 命令一起使用时使路由具有永久性。
  8. add:添加一条新路由。
  9. del:删除一条路由。
  10. -net:目标地址是一个网络。
  11. -host:目标地址是一个主机。
  12. netmask:当添加一个网络路由时,需要使用网络掩码。
  13. gw:路由数据包通过网关。注意,你指定的网关必须能够达到。
  14. metric:设置路由跳数。
  15. Command 指定您想运行的命令 (Add/Change/Delete/Print)。
  16. Destination 指定该路由的网络目标。
  17. mask Netmask 指定与网络目标相关的网络掩码(也被称作子网掩码)。
  18. Gateway 指定网络目标定义的地址集和子网掩码可以到达的前进或下一跃点 IP 地址。
  19. metric Metric 为路由指定一个整数成本值标(从 1 至 9999),当在路由表(与转发的数据包目标地址最匹配)的多个路由中进行选择时可以使用。
  20. if Interface 为可以访问目标的接口指定接口索引。若要获得一个接口列表和它们相应的接口索引,使用 route print 命令的显示功能。可以使用十进制或十六进制值进行接口索引。
复制代码
route下令利用示例

**实例1:**体现当前路由
下令:
  1. <code>route
  2. route -n
复制代码
输出:
  1. <code>[root@localhost ~]# route
  2. Kernel IP routing table
  3. Destination   Gateway     Genmask     Flags Metric Ref  Use Iface
  4. 192.168.120.0  *        255.255.255.0  U   0   0    0 eth0
  5. e192.168.0.0   192.168.120.1  255.255.0.0   UG  0   0    0 eth0
  6. 10.0.0.0    192.168.120.1  255.0.0.0    UG  0   0    0 eth0
  7. default     192.168.120.240 0.0.0.0     UG  0   0    0 eth0
  8. [root@localhost ~]# route -n
  9. Kernel IP routing table
  10. Destination   Gateway     Genmask     Flags Metric Ref  Use Iface
  11. 192.168.120.0  0.0.0.0     255.255.255.0  U   0   0    0 eth0
  12. 192.168.0.0   192.168.120.1  255.255.0.0   UG  0   0    0 eth0
  13. 10.0.0.0    192.168.120.1  255.0.0.0    UG  0   0    0 eth0
  14. 0.0.0.0     192.168.120.240 0.0.0.0     UG  0   0    0 eth0
复制代码
分析:
第一行表现主机所在网络的地点为192.168.120.0,若数据传送目的是在本局域网内通讯,则可直接通过eth0转发数据包;
第四行表现数据传送目的是访问Internet,则由接口eth0,将数据包发送到网关192.168.120.240
此中Flags为路由标志,标志当前网络节点的状态。
Flags标志分析:
U Up表现此路由当前为启动状态
H Host,表现此网关为一主机
G Gateway,表现此网关为一起由器
R Reinstate Route,利用动态路由重新初始化的路由
D Dynamically,此路由是动态性地写入
M Modified,此路由是由路由保卫步伐或导向器动态修改
! 表现此路由当前为关闭状态
备注:
route -n (-n 表现不剖析名字,列出速率会比route 快)
**实例2:**添加网关/设置网关
下令:
  1. <code>route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
复制代码
输出:
  1. [root@localhost ~]# <code>route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0[root@localhost ~]# routeKernel IP routing tableDestination   Gateway     Genmask     Flags Metric Ref  Use Iface192.168.120.0  *        255.255.255.0  U   0   0    0 eth0192.168.0.0   192.168.120.1  255.255.0.0   UG  0   0    0 eth010.0.0.0    192.168.120.1  255.0.0.0    UG  0   0    0 eth0224.0.0.0    *        240.0.0.0    U   0   0    0 eth0default     192.168.120.240 0.0.0.0     UG  0   0    0 eth0[root@localhost ~]#
复制代码
分析:
增长一条 到达244.0.0.0的路由
实例3:屏蔽一条路由
下令:
  1. <code>route add -net 224.0.0.0 netmask 240.0.0.0 reject
复制代码
输出:
  1. [root@localhost ~]# <code>route add -net 224.0.0.0 netmask 240.0.0.0 reject[root@localhost ~]# routeKernel IP routing tableDestination   Gateway     Genmask     Flags Metric Ref  Use Iface192.168.120.0  *        255.255.255.0  U   0   0    0 eth0192.168.0.0   192.168.120.1  255.255.0.0   UG  0   0    0 eth010.0.0.0    192.168.120.1  255.0.0.0    UG  0   0    0 eth0224.0.0.0    -        240.0.0.0    !   0   -    0 -224.0.0.0    *        240.0.0.0    U   0   0    0 eth0default     192.168.120.240 0.0.0.0     UG  0   0    0 eth0
复制代码
分析:
增长一条屏蔽的路由,目的地点为 224.x.x.x 将被拒绝
实例4:删除路由纪录
下令:
  1. <code>route del -net 224.0.0.0 netmask 240.0.0.0
  2. route del -net 224.0.0.0 netmask 240.0.0.0 reject
复制代码
输出:
  1. <code>[root@localhost ~]# route
  2. Kernel IP routing table
  3. Destination   Gateway     Genmask     Flags Metric Ref  Use Iface
  4. 192.168.120.0  *        255.255.255.0  U   0   0    0 eth0
  5. 192.168.0.0   192.168.120.1  255.255.0.0   UG  0   0    0 eth0
  6. 10.0.0.0    192.168.120.1  255.0.0.0    UG  0   0    0 eth0
  7. 224.0.0.0    -        240.0.0.0    !   0   -    0 -
  8. 224.0.0.0    *        240.0.0.0    U   0   0    0 eth0
  9. default     192.168.120.240 0.0.0.0     UG  0   0    0 eth0
  10. [root@localhost ~]# route del -net 224.0.0.0 netmask 240.0.0.0
  11. [root@localhost ~]# route
  12. Kernel IP routing table
  13. Destination   Gateway     Genmask     Flags Metric Ref  Use Iface
  14. 192.168.120.0  *        255.255.255.0  U   0   0    0 eth0
  15. 192.168.0.0   192.168.120.1  255.255.0.0   UG  0   0    0 eth0
  16. 10.0.0.0    192.168.120.1  255.0.0.0    UG  0   0    0 eth0
  17. 224.0.0.0    -        240.0.0.0    !   0   -    0 -
  18. default     192.168.120.240 0.0.0.0     UG  0   0    0 eth0
  19. [root@localhost ~]# route del -net 224.0.0.0 netmask 240.0.0.0 reject
  20. [root@localhost ~]# route
  21. Kernel IP routing table
  22. Destination   Gateway     Genmask     Flags Metric Ref  Use Iface
  23. 192.168.120.0  *        255.255.255.0  U   0   0    0 eth0
  24. 192.168.0.0   192.168.120.1  255.255.0.0   UG  0   0    0 eth0
  25. 10.0.0.0    192.168.120.1  255.0.0.0    UG  0   0    0 eth0
  26. default     192.168.120.240 0.0.0.0     UG  0   0    0 eth0
  27. [root@localhost ~]#
复制代码
分析:
实例5:删除和添加设置默认网关
下令:
  1. <code>route del default gw 192.168.120.240
  2. route add default gw 192.168.120.240
复制代码
输出:
  1. <code>[root@localhost ~]# route del default gw 192.168.120.240
  2. [root@localhost ~]# route
  3. Kernel IP routing table
  4. Destination   Gateway     Genmask     Flags Metric Ref  Use Iface
  5. 192.168.120.0  *        255.255.255.0  U   0   0    0 eth0
  6. 192.168.0.0   192.168.120.1  255.255.0.0   UG  0   0    0 eth0
  7. 10.0.0.0    192.168.120.1  255.0.0.0    UG  0   0    0 eth0
  8. [root@localhost ~]# route add default gw 192.168.120.240
  9. [root@localhost ~]# route
  10. Kernel IP routing table
  11. Destination   Gateway     Genmask     Flags Metric Ref  Use Iface
  12. 192.168.120.0  *        255.255.255.0  U   0   0    0 eth0
  13. 192.168.0.0   192.168.120.1  255.255.0.0   UG  0   0    0 eth0
  14. 10.0.0.0    192.168.120.1  255.0.0.0    UG  0   0    0 eth0
  15. default     192.168.120.240 0.0.0.0     UG  0   0    0 eth0
  16. [root@localhost ~]#
复制代码
ping下令语法

Linux体系的ping下令是常用的网络下令,它通常用来测试与目的主机的连通性,我们经常会说“ping一下某呆板,看是不是开着”、不能打开网页时会说“你先ping网关地点192.168.1.1试试”。它通过发送ICMP ECHO_REQUEST数据包到网络主机(send ICMP ECHO_REQUEST to network hosts),并体现相应环境,如许我们就可以根据它输出的信息来确定目的主机是否可访问(但这不是绝对的)。有些服务器为了防止通过ping探测到,通过防火墙设置了克制ping大概在内核参数中克制ping,如许就不能通过ping确定该主机是否还处于开启状态。
linux下的ping和windows下的ping稍有区别,linux下ping不会自动制止,必要按ctrl+c制止大概用参数-c指定要求完成的回应次数。
**1.**下令格式:
ping [参数] [主机名或IP地点]
**2.**下令功能:
ping下令用于:确定网络和各外部主机的状态;跟踪和隔离硬件和软件题目;测试、评估和管理网络。如果主机正在运行并连在网上,它就对回送信号举行相应。每个回送信号哀求包罗一个网际协议(IP)和 ICMP 头,背面紧跟一个 tim 布局,以及来填写这个信息包的富足的字节。缺省环境是一连发送回送信号哀求直到吸取到制止信号(Ctrl-C)。
ping 下令每秒发送一个数据报而且为每个吸取到的相应打印一行输出。ping 下令盘算信号往返时间和(信息)包丢失环境的统计信息,而且在完成之后体现一个扼要总结。ping 下令在步伐超时或当吸取到 SIGINT 信号时竣事。Host 参数大概是一个有用的主机名大概是因特网地点。
**3.**下令参数:
  1. <code>-d 使用Socket的SO_DEBUG功能。
  2. -f 极限检测。大量且快速地送网络封包给一台机器,看它的回应。
  3. -n 只输出数值。
  4. -q 不显示任何传送封包的信息,只显示最后的结果。
  5. -r 忽略普通的Routing Table,直接将数据包送到远端主机上。通常是查看本机的网络接口是否有问题。
  6. -R 记录路由过程。
  7. -v 详细显示指令的执行过程。
  8. <p>-c 数目:在发送指定数目的包后停止。
  9. -i 秒数:设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次。
  10. -I 网络界面:使用指定的网络界面送出数据包。
  11. -l 前置载入:设置在送出要求信息之前,先行发出的数据包。
  12. -p 范本样式:设置填满数据包的范本样式。
  13. -s 字节数:指定发送的数据字节数,预设值是56,加上8字节的ICMP头,一共是64ICMP数据字节。
  14. -t 存活数值:设置存活数值TTL的大小。
复制代码
ping下令利用示例

实例1:ping的通的环境
下令:
ping 192.168.120.205
输出:
  1. <code>[root@localhost ~]# ping 192.168.120.205
  2. PING 192.168.120.205 (192.168.120.205) 56(84) bytes of data.
  3. 64 bytes from 192.168.120.205: icmp_seq=1 ttl=64 time=0.720 ms
  4. 64 bytes from 192.168.120.205: icmp_seq=2 ttl=64 time=0.181 ms
  5. 64 bytes from 192.168.120.205: icmp_seq=3 ttl=64 time=0.191 ms
  6. 64 bytes from 192.168.120.205: icmp_seq=4 ttl=64 time=0.188 ms
  7. 64 bytes from 192.168.120.205: icmp_seq=5 ttl=64 time=0.189 ms
  8. --- 192.168.120.205 ping statistics ---
  9. 5 packets transmitted, 5 received, 0% packet loss, time 4000ms
  10. rtt min/avg/max/mdev = 0.181/0.293/0.720/0.214 ms
  11. [root@localhost ~]#
复制代码
分析:
实例2:ping不通的环境
下令:
  1. <code>ping 192.168.120.202
复制代码
输出:
  1. [root@localhost ~]# <code>ping 192.168.120.202PING 192.168.120.202 (192.168.120.202) 56(84) bytes of data.From 192.168.120.204 icmp_seq=1 Destination Host UnreachableFrom 192.168.120.204 icmp_seq=2 Destination Host UnreachableFrom 192.168.120.204 icmp_seq=3 Destination Host UnreachableFrom 192.168.120.204 icmp_seq=4 Destination Host UnreachableFrom 192.168.120.204 icmp_seq=5 Destination Host UnreachableFrom 192.168.120.204 icmp_seq=6 Destination Host Unreachable--- 192.168.120.202 ping statistics ---8 packets transmitted, 0 received, +6 errors, 100% packet loss, time 7005ms, pipe 4[root@localhost ~]#
复制代码
分析:
**实例3:**ping网关
下令:
  1. <code>ping -b 192.168.120.1
复制代码
输出:
  1. [root@localhost ~]# routeKernel IP routing tableDestination   Gateway     Genmask     Flags Metric Ref  Use Iface192.168.120.0  *        255.255.255.0  U   0   0    0 eth0192.168.0.0   192.168.120.1  255.255.0.0   UG  0   0    0 eth010.0.0.0    192.168.120.1  255.0.0.0    UG  0   0    0 eth0default     192.168.120.240 0.0.0.0     UG  0   0    0 eth0[root@localhost ~]# <code>ping -b 192.168.120.1PING 192.168.120.1 (192.168.120.1) 56(84) bytes of data.64 bytes from 192.168.120.1: icmp_seq=1 ttl=255 time=2.02 ms64 bytes from 192.168.120.1: icmp_seq=2 ttl=255 time=1.83 ms64 bytes from 192.168.120.1: icmp_seq=3 ttl=255 time=1.68 ms64 bytes from 192.168.120.1: icmp_seq=4 ttl=255 time=1.98 ms64 bytes from 192.168.120.1: icmp_seq=5 ttl=255 time=1.88 ms--- 192.168.120.1 ping statistics ---5 packets transmitted, 5 received, 0% packet loss, time 4000msrtt min/avg/max/mdev = 1.682/1.880/2.020/0.129 ms
复制代码
分析:
**实例4:**ping指定次数
下令:
  1. <code>ping -c 10 192.168.120.206
复制代码
输出:
  1. [root@localhost ~]# <code>ping -c 10 192.168.120.206PING 192.168.120.206 (192.168.120.206) 56(84) bytes of data.64 bytes from 192.168.120.206: icmp_seq=1 ttl=64 time=1.25 ms64 bytes from 192.168.120.206: icmp_seq=2 ttl=64 time=0.260 ms64 bytes from 192.168.120.206: icmp_seq=3 ttl=64 time=0.242 ms64 bytes from 192.168.120.206: icmp_seq=4 ttl=64 time=0.271 ms64 bytes from 192.168.120.206: icmp_seq=5 ttl=64 time=0.274 ms64 bytes from 192.168.120.206: icmp_seq=6 ttl=64 time=0.295 ms64 bytes from 192.168.120.206: icmp_seq=7 ttl=64 time=0.269 ms64 bytes from 192.168.120.206: icmp_seq=8 ttl=64 time=0.270 ms64 bytes from 192.168.120.206: icmp_seq=9 ttl=64 time=0.253 ms64 bytes from 192.168.120.206: icmp_seq=10 ttl=64 time=0.289 ms--- 192.168.120.206 ping statistics ---10 packets transmitted, 10 received, 0% packet loss, time 9000msrtt min/avg/max/mdev = 0.242/0.367/1.251/0.295 ms[root@localhost ~]#
复制代码
分析:
实例5:时间隔断和次数限定的ping
下令:
  1. <code>ping -c 10 -i 0.5 192.168.120.206
复制代码
输出:
  1. [root@localhost ~]# <code>ping -c 10 -i 0.5 192.168.120.206PING 192.168.120.206 (192.168.120.206) 56(84) bytes of data.64 bytes from 192.168.120.206: icmp_seq=1 ttl=64 time=1.24 ms64 bytes from 192.168.120.206: icmp_seq=2 ttl=64 time=0.235 ms64 bytes from 192.168.120.206: icmp_seq=3 ttl=64 time=0.244 ms64 bytes from 192.168.120.206: icmp_seq=4 ttl=64 time=0.300 ms64 bytes from 192.168.120.206: icmp_seq=5 ttl=64 time=0.255 ms64 bytes from 192.168.120.206: icmp_seq=6 ttl=64 time=0.264 ms64 bytes from 192.168.120.206: icmp_seq=7 ttl=64 time=0.263 ms64 bytes from 192.168.120.206: icmp_seq=8 ttl=64 time=0.331 ms64 bytes from 192.168.120.206: icmp_seq=9 ttl=64 time=0.247 ms64 bytes from 192.168.120.206: icmp_seq=10 ttl=64 time=0.244 ms--- 192.168.120.206 ping statistics ---10 packets transmitted, 10 received, 0% packet loss, time 4499msrtt min/avg/max/mdev = 0.235/0.362/1.241/0.294 ms[root@localhost ~]# ping -c 10 -i 0.01 192.168.120.206PING 192.168.120.206 (192.168.120.206) 56(84) bytes of data.64 bytes from 192.168.120.206: icmp_seq=1 ttl=64 time=0.244 ms64 bytes from 192.168.120.206: icmp_seq=2 ttl=64 time=0.195 ms64 bytes from 192.168.120.206: icmp_seq=3 ttl=64 time=0.219 ms64 bytes from 192.168.120.206: icmp_seq=4 ttl=64 time=0.204 ms64 bytes from 192.168.120.206: icmp_seq=5 ttl=64 time=3.56 ms64 bytes from 192.168.120.206: icmp_seq=6 ttl=64 time=1.93 ms64 bytes from 192.168.120.206: icmp_seq=7 ttl=64 time=0.193 ms64 bytes from 192.168.120.206: icmp_seq=8 ttl=64 time=0.193 ms64 bytes from 192.168.120.206: icmp_seq=9 ttl=64 time=0.202 ms64 bytes from 192.168.120.206: icmp_seq=10 ttl=64 time=0.211 ms--- 192.168.120.206 ping statistics ---10 packets transmitted, 10 received, 0% packet loss, time 90msrtt min/avg/max/mdev = 0.193/0.716/3.564/1.080 ms[root@localhost ~]#
复制代码
分析:
实例6:通过域名ping公网上的站点
下令:
  1. <code>ping -c 5 www.58.com
复制代码
输出:
  1. peida-VirtualBox ~ # <code>ping -c 5 www.58.comPING www.58.com (211.151.111.30) 56(84) bytes of data.64 bytes from 211.151.111.30: icmp_req=1 ttl=49 time=14.7 ms64 bytes from 211.151.111.30: icmp_req=2 ttl=49 time=16.4 ms64 bytes from 211.151.111.30: icmp_req=3 ttl=49 time=15.2 ms64 bytes from 211.151.111.30: icmp_req=4 ttl=49 time=14.6 ms64 bytes from 211.151.111.30: icmp_req=5 ttl=49 time=19.9 ms--- www.58.com ping statistics ---5 packets transmitted, 5 received, 0% packet loss, time 20101msrtt min/avg/max/mdev = 14.618/16.192/19.917/1.965 mspeida-VirtualBox ~ #
复制代码
分析:
**实例7:**多参数利用
下令:
  1. <code>ping -i 3 -s 1024 -t 255 192.168.120.206
复制代码
输出:
  1. [root@localhost ~]# <code>ping -i 3 -s 1024 -t 255 192.168.120.206PING 192.168.120.206 (192.168.120.206) 1024(1052) bytes of data.1032 bytes from 192.168.120.206: icmp_seq=1 ttl=64 time=1.99 ms1032 bytes from 192.168.120.206: icmp_seq=2 ttl=64 time=0.694 ms1032 bytes from 192.168.120.206: icmp_seq=3 ttl=64 time=0.300 ms1032 bytes from 192.168.120.206: icmp_seq=4 ttl=64 time=0.481 ms1032 bytes from 192.168.120.206: icmp_seq=5 ttl=64 time=0.415 ms1032 bytes from 192.168.120.206: icmp_seq=6 ttl=64 time=0.600 ms1032 bytes from 192.168.120.206: icmp_seq=7 ttl=64 time=0.411 ms1032 bytes from 192.168.120.206: icmp_seq=8 ttl=64 time=0.281 ms1032 bytes from 192.168.120.206: icmp_seq=9 ttl=64 time=0.318 ms1032 bytes from 192.168.120.206: icmp_seq=10 ttl=64 time=0.362 ms1032 bytes from 192.168.120.206: icmp_seq=11 ttl=64 time=0.408 ms1032 bytes from 192.168.120.206: icmp_seq=12 ttl=64 time=0.445 ms1032 bytes from 192.168.120.206: icmp_seq=13 ttl=64 time=0.397 ms1032 bytes from 192.168.120.206: icmp_seq=14 ttl=64 time=0.406 ms1032 bytes from 192.168.120.206: icmp_seq=15 ttl=64 time=0.458 ms--- 192.168.120.206 ping statistics ---15 packets transmitted, 15 received, 0% packet loss, time 41999msrtt min/avg/max/mdev = 0.281/0.531/1.993/0.404 ms[root@localhost ~]#
复制代码
分析:
-i 3 发送周期为 3秒 -s 设置发送包的巨细为1024 -t 设置TTL值为 255
traceroute下令语法

通过traceroute我们可以知道信息从你的盘算机到互联网另一端的主机是走的什么路径。固然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径大概会不一样,但根本上来说大部分时间所走的路由是类似的。linux体系中,我们称之为traceroute,在MS Windows中为tracert。 traceroute通过发送小的数据包到目的装备直到其返回,来丈量其必要多长时间。一条路径上的每个装备traceroute要测3次。输出结果中包罗每次测试的时间(ms)和装备的名称(如有的话)及其IP地点。
在大多数环境下,我们会在linux主机体系下,直接实验下令行:
traceroute hostname
而在Windows体系下是实验tracert的下令:
tracert hostname
**1.**下令格式:
traceroute[参数][主机]
**2.**下令功能:
traceroute指令让你追踪网络数据包的路由途径,预设数据包巨细是40Bytes,用户可另行设置。
具体参数格式:traceroute [-dFlnrvx][-f][-g…][-i][-m][-p][-s][-t][-w][主机名称或IP地点][数据包巨细]
**3.**下令参数:
  1. <code>-d 使用Socket层级的排错功能。
  2. -f 设置第一个检测数据包的存活数值TTL的大小。
  3. -F 设置勿离断位。
  4. -g 设置来源路由网关,最多可设置8个。
  5. -i 使用指定的网络界面送出数据包。
  6. -I 使用ICMP回应取代UDP资料信息。
  7. -m 设置检测数据包的最大存活数值TTL的大小。
  8. -n 直接使用IP地址而非主机名称。
  9. -p 设置UDP传输协议的通信端口。
  10. -r 忽略普通的Routing Table,直接将数据包送到远端主机上。
  11. -s 设置本地主机送出数据包的IP地址。
  12. -t 设置检测数据包的TOS数值。
  13. -v 详细显示指令的执行过程。
  14. -w 设置等待远端主机回报的时间。
  15. -x 开启或关闭数据包的正确性检验。
复制代码
traceroute下令利用示例

**实例1:**traceroute 用法简朴、最常用的用法
下令:
  1. <code>traceroute www.baidu.com
复制代码
输出:
  1. <code>[root@localhost ~]# traceroute www.baidu.com
  2. traceroute to www.baidu.com (61.135.169.125), 30 hops max, 40 byte packets
  3. 1 192.168.74.2 (192.168.74.2) 2.606 ms 2.771 ms 2.950 ms
  4. 2 211.151.56.57 (211.151.56.57) 0.596 ms 0.598 ms 0.591 ms
  5. 3 211.151.227.206 (211.151.227.206) 0.546 ms 0.544 ms 0.538 ms
  6. 4 210.77.139.145 (210.77.139.145) 0.710 ms 0.748 ms 0.801 ms
  7. 5 202.106.42.101 (202.106.42.101) 6.759 ms 6.945 ms 7.107 ms
  8. 6 61.148.154.97 (61.148.154.97) 718.908 ms * bt-228-025.bta.net.cn (202.106.228.25) 5.177 ms
  9. 7 124.65.58.213 (124.65.58.213) 4.343 ms 4.336 ms 4.367 ms
  10. 8 202.106.35.190 (202.106.35.190) 1.795 ms 61.148.156.138 (61.148.156.138) 1.899 ms 1.951 ms
  11. 9 * * *
  12. 30 * * *
  13. [root@localhost ~]#
复制代码
分析:
纪录按序列号从1开始,每个记录就是一跳 ,每跳表现一个网关,我们看到每行有三个时间,单元是 ms,着实就是-q的默认参数。探测数据包向每个网关发送三个数据包后,网关相应后返回的时间;如果您用 traceroute -q 4 www.58.com ,表现向每个网关发送4个数据包。
偶然我们traceroute 一台主机时,会看到有一些行是以星号表现的。出现如许的环境,大概是防火墙封掉了ICMP的返复书息,以是我们得不到什么干系的数据包返回数据。
偶然我们在某一网关处延时比力长,有大概是某台网关比力壅闭,也大概是物理装备自己的缘故原由。固然如果某台DNS出现题目时,不能剖析主机名、域名时,也会 有延时长的征象;您可以加-n 参数来制止DNS剖析,以IP格式输出数据。
如果在局域网中的差别网段之间,我们可以通过traceroute 来排查题目所在,是主机的题目照旧网关的题目。如果我们通过远程来访问某台服务器碰到题目时,我们用到traceroute 追踪数据包所颠末的网关,提交IDC服务商,也有助于办理题目;但现在看来在国内办理如许的题目是比力困难的,就是我们发现题目所在,IDC服务商也不大概资助我们办理。
**实例2:**跳数设置
下令:
  1. <code>traceroute -m 10 www.baidu.com
复制代码
输出:
  1. [root@localhost ~]# <code>traceroute -m 10 www.baidu.comtraceroute to www.baidu.com (61.135.169.105), 10 hops max, 40 byte packets 1 192.168.74.2 (192.168.74.2) 1.534 ms 1.775 ms 1.961 ms 2 211.151.56.1 (211.151.56.1) 0.508 ms 0.514 ms 0.507 ms 3 211.151.227.206 (211.151.227.206) 0.571 ms 0.558 ms 0.550 ms 4 210.77.139.145 (210.77.139.145) 0.708 ms 0.729 ms 0.785 ms 5 202.106.42.101 (202.106.42.101) 7.978 ms 8.155 ms 8.311 ms 6 bt-228-037.bta.net.cn (202.106.228.37) 772.460 ms bt-228-025.bta.net.cn (202.106.228.25) 2.152 ms 61.148.154.97 (61.148.154.97) 772.107 ms 7 124.65.58.221 (124.65.58.221) 4.875 ms 61.148.146.29 (61.148.146.29) 2.124 ms 124.65.58.221 (124.65.58.221) 4.854 ms 8 123.126.6.198 (123.126.6.198) 2.944 ms 61.148.156.6 (61.148.156.6) 3.505 ms 123.126.6.198 (123.126.6.198) 2.885 ms 9 * * *10 * * *[root@localhost ~]#
复制代码
分析:
**实例3:**体现IP地点,不查主机名
下令:
  1. <code>traceroute -n www.baidu.com
复制代码
输出:
  1. [root@localhost ~]# <code>traceroute -n www.baidu.comtraceroute to www.baidu.com (61.135.169.125), 30 hops max, 40 byte packets 1 211.151.74.2 5.430 ms 5.636 ms 5.802 ms 2 211.151.56.57 0.627 ms 0.625 ms 0.617 ms 3 211.151.227.206 0.575 ms 0.584 ms 0.576 ms 4 210.77.139.145 0.703 ms 0.754 ms 0.806 ms 5 202.106.42.101 23.683 ms 23.869 ms 23.998 ms 6 202.106.228.37 247.101 ms * * 7 61.148.146.29 5.256 ms 124.65.58.213 4.386 ms 4.373 ms 8 202.106.35.190 1.610 ms 61.148.156.138 1.786 ms 61.148.3.34 2.089 ms 9 * * *30 * * *[root@localhost ~]# traceroute www.baidu.comtraceroute to www.baidu.com (61.135.169.125), 30 hops max, 40 byte packets 1 211.151.74.2 (211.151.74.2) 4.671 ms 4.865 ms 5.055 ms 2 211.151.56.57 (211.151.56.57) 0.619 ms 0.618 ms 0.612 ms 3 211.151.227.206 (211.151.227.206) 0.620 ms 0.642 ms 0.636 ms 4 210.77.139.145 (210.77.139.145) 0.720 ms 0.772 ms 0.816 ms 5 202.106.42.101 (202.106.42.101) 7.667 ms 7.910 ms 8.012 ms 6 bt-228-025.bta.net.cn (202.106.228.25) 2.965 ms 2.440 ms 61.148.154.97 (61.148.154.97) 431.337 ms 7 124.65.58.213 (124.65.58.213) 5.134 ms 5.124 ms 5.044 ms 8 202.106.35.190 (202.106.35.190) 1.917 ms 2.052 ms 2.059 ms 9 * * *30 * * *[root@localhost ~]#
复制代码
分析:
**实例4:**探测包利用的根本UDP端口设置6888
下令:
  1. <code>traceroute -p 6888 www.baidu.com
复制代码
输出:
  1. [root@localhost ~]# <code>traceroute -p 6888 www.baidu.comtraceroute to www.baidu.com (220.181.111.147), 30 hops max, 40 byte packets 1 211.151.74.2 (211.151.74.2) 4.927 ms 5.121 ms 5.298 ms 2 211.151.56.1 (211.151.56.1) 0.500 ms 0.499 ms 0.509 ms 3 211.151.224.90 (211.151.224.90) 0.637 ms 0.631 ms 0.641 ms 4 * * * 5 220.181.70.98 (220.181.70.98) 5.050 ms 5.313 ms 5.596 ms 6 220.181.17.94 (220.181.17.94) 1.665 ms !X * *[root@localhost ~]#
复制代码
分析:
**实例5:**把探测包的个数设置为值4
下令:
  1. <code>traceroute -q 4 www.baidu.com
复制代码
输出:
  1. [root@localhost ~]# <code>traceroute -q 4 www.baidu.comtraceroute to www.baidu.com (61.135.169.125), 30 hops max, 40 byte packets 1 211.151.74.2 (211.151.74.2) 40.633 ms 40.819 ms 41.004 ms 41.188 ms 2 211.151.56.57 (211.151.56.57) 0.637 ms 0.633 ms 0.627 ms 0.619 ms 3 211.151.227.206 (211.151.227.206) 0.505 ms 0.580 ms 0.571 ms 0.569 ms 4 210.77.139.145 (210.77.139.145) 0.753 ms 0.800 ms 0.853 ms 0.904 ms 5 202.106.42.101 (202.106.42.101) 7.449 ms 7.543 ms 7.738 ms 7.893 ms 6 61.148.154.97 (61.148.154.97) 316.817 ms bt-228-025.bta.net.cn (202.106.228.25) 3.695 ms 3.672 ms * 7 124.65.58.213 (124.65.58.213) 3.056 ms 2.993 ms 2.960 ms 61.148.146.29 (61.148.146.29) 2.837 ms 8 61.148.3.34 (61.148.3.34) 2.179 ms 2.295 ms 2.442 ms 202.106.35.190 (202.106.35.190) 7.136 ms 9 * * * *30 * * * *[root@localhost ~]#
复制代码
分析:
**实例6:**绕过正常的路由表,直接发送到网络相连的主机
下令:
  1. <code> traceroute -r www.baidu.com
复制代码
输出:
  1. [root@localhost ~]#<code> traceroute -r www.baidu.comtraceroute to www.baidu.com (61.135.169.125), 30 hops max, 40 byte packetsconnect: 网络不可达[root@localhost ~]#
复制代码
分析:
**实例7:**把对外发探测包的等候相应时间设置为3秒
下令:
  1. <code>traceroute -w 3 www.baidu.com
复制代码
输出:
  1. [root@localhost ~]# <code>traceroute -w 3 www.baidu.comtraceroute to www.baidu.com (61.135.169.105), 30 hops max, 40 byte packets 1 211.151.74.2 (211.151.74.2) 2.306 ms 2.469 ms 2.650 ms 2 211.151.56.1 (211.151.56.1) 0.621 ms 0.613 ms 0.603 ms 3 211.151.227.206 (211.151.227.206) 0.557 ms 0.560 ms 0.552 ms 4 210.77.139.145 (210.77.139.145) 0.708 ms 0.761 ms 0.817 ms 5 202.106.42.101 (202.106.42.101) 7.520 ms 7.774 ms 7.902 ms 6 bt-228-025.bta.net.cn (202.106.228.25) 2.890 ms 2.369 ms 61.148.154.97 (61.148.154.97) 471.961 ms 7 124.65.58.221 (124.65.58.221) 4.490 ms 4.483 ms 4.472 ms 8 123.126.6.198 (123.126.6.198) 2.948 ms 61.148.156.6 (61.148.156.6) 7.688 ms 7.756 ms 9 * * *30 * * *[root@localhost ~]#
复制代码
分析:
Traceroute的工作原理:
Traceroute最简朴的根本用法是:traceroute hostname
Traceroute步伐的计划是利用ICMP及IP header的TTL(Time To Live)栏位(field)。起首,traceroute送出一个TTL是1的IP datagram(着实,每次送出的为3个40字节的包,包罗源地点,目的地点和包发出的时间标签)到目的地,当路径上的第一个路由器(router)收到这个datagram时,它将TTL减1。此时,TTL变为0了,以是该路由器会将此datagram丢掉,并送回一个「ICMP time exceeded」消息(包罗发IP包的源地点,IP包的全部内容及路由器的IP地点),traceroute 收到这个消息后,便知道这个路由器存在于这个路径上,接着traceroute 再送出另一个TTL是2 的datagram,发现第2 个路由器… traceroute 每次将送出的datagram的TTL 加1来发现另一个路由器,这个重复的动作不绝连续到某个datagram 抵达目的地。当datagram到达目的地后,该主机并不会送回ICMP time exceeded消息,由于它已是目的地了,那么traceroute怎样得知目的地到达了呢?
Traceroute在送出UDP datagrams到目的地时,它所选择送达的port number 是一个一样寻常应用步伐都不会用的号码(30000 以上),以是当此UDP datagram 到达目的地后该主时机送回一个「ICMP port unreachable」的消息,而当traceroute 收到这个消息时,便知道目的地已经到达了。以是traceroute 在Server端也是没有所谓的Daemon 程式。
Traceroute提取发 ICMP TTL到期消息装备的IP地点并作域名剖析。每次 ,Traceroute都打印出一系列数据,包罗所颠末的路由装备的域名及 IP地点,三个包每次往返所花时间。
<code>netstat下令语法

<code>netstat下令用于体现与IP、TCP、UDP和ICMP协议干系的统计数据,一样寻常用于查验本机各端口的网络毗连环境。<code>netstat是在内核中访问网络及干系信息的步伐,它能提供TCP毗连,TCP和UDP监听,历程内存管理的干系陈诉。
如果你的盘算机偶然间吸取到的数据报导致堕落数据或故障,你不必感到奇怪,TCP/IP可以容许这些范例的错误,并可以大概自动重发数据报。但如果累计的堕落环境数目占到所吸取的IP数据报相称大的百分比,大概它的数目正敏捷增长,那么你就应该利用<code>netstat查一查为什么会出现这些环境了。
**1.**下令格式:
<code>netstat [-acCeFghilMnNoprstuvVwx][-A][–ip]
**2.*下令功能:
<code>netstat用于体现与IP、TCP、UDP和ICMP协议干系的统计数据,一样寻常用于查验本机各端口的网络毗连环境。
**3.**下令参数:
  1. <code>-a或–all 显示所有连线中的Socket。
  2. -A<网络类型>或–<网络类型> 列出该网络类型连线中的相关地址。
  3. -c或–continuous 持续列出网络状态。
  4. -C或–cache 显示路由器配置的快取信息。
  5. -e或–extend 显示网络其他相关信息。
  6. -F或–fib 显示FIB。
  7. -g或–groups 显示多重广播功能群组组员名单。
  8. -h或–help 在线帮助。
  9. -i或–interfaces 显示网络界面信息表单。
  10. -l或–listening 显示监控中的服务器的Socket。
  11. -M或–masquerade 显示伪装的网络连线。
  12. -n或–numeric 直接使用IP地址,而不通过域名服务器。
  13. -N或–netlink或–symbolic 显示网络硬件外围设备的符号连接名称。
  14. -o或–timers 显示计时器。
  15. -p或–programs 显示正在使用Socket的程序识别码和程序名称。
  16. -r或–route 显示Routing Table。
  17. -s或–statistice 显示网络工作信息统计表。
  18. -t或–tcp 显示TCP传输协议的连线状况。
  19. -u或–udp 显示UDP传输协议的连线状况。
  20. -v或–verbose 显示指令执行过程。
  21. -V或–version 显示版本信息。
  22. -w或–raw 显示RAW传输协议的连线状况。
  23. -x或–unix 此参数的效果和指定”-A unix”参数相同。
  24. –ip或–inet 此参数的效果和指定”-A inet”参数相同。
复制代码
<code>netstat下令利用示例

实例1:无参数利用
下令:
  1. <code>netstat
复制代码
输出:
  1. [root@localhost ~]# <code>netstatActive Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address        Foreign Address       State   tcp    0  268 192.168.120.204:ssh     10.2.0.68:62420       ESTABLISHED udp    0   0 192.168.120.204:4371    10.58.119.119:domain    ESTABLISHED Active UNIX domain sockets (w/o servers)Proto RefCnt Flags    Type    State     I-Node Pathunix 2   [ ]     DGRAM          1491  @/org/kernel/udev/udevdunix 4   [ ]     DGRAM          7337  /dev/logunix 2   [ ]     DGRAM          708823 unix 2   [ ]     DGRAM          7539  unix 3   [ ]     STREAM   CONNECTED   7287  unix 3   [ ]     STREAM   CONNECTED   7286  [root@localhost ~]#
复制代码
分析:
从团体上看,<code>netstat的输出结果可以分为两个部分:
一个是Active Internet connections,称为有源TCP毗连,此中"Recv-Q"和"Send-Q"指的是吸取队列和发送队列。这些数字一样寻常都应该是0。如果不是则表现软件包正在队列中堆积。这种环境只能在非常少的环境见到。
另一个是Active UNIX domain sockets,称为有源Unix域套接口(和网络套接字一样,但是只能用于本机通讯,性能可以进步一倍)。
Proto体现毗连利用的协议,RefCnt表现毗连到本套接口上的历程号,Types体现套接口的范例,State体现套接口当前的状态,Path表现毗连到套接口的别的历程利用的路径名。
套接口范例:
-t :TCP
-u :UDP
-raw :RAW范例
–unix :UNIX域范例
–ax25 :AX25范例
–ipx :ipx范例
–netrom :netrom范例
状态分析:
LISTEN:侦听来自远方的TCP端口的毗连哀求
SYN-SENT:再发送毗连哀求后等候匹配的毗连哀求(如果有大量如许的状态包,查抄是否中招了)
SYN-RECEIVED:再收到和发送一个毗连哀求后等候对方对毗连哀求简直认(如有大量此状态,估计被flood攻击了)
ESTABLISHED:代表一个打开的毗连
FIN-WAIT-1:等候远程TCP毗连制止哀求,或先前的毗连制止哀求简直认
FIN-WAIT-2:从远程TCP等候毗连制止哀求
CLOSE-WAIT:等候从本地用户发来的毗连制止哀求
CLOSING:等候远程TCP对毗连制止简直认
LAST-ACK:等候原来的发向远程TCP的毗连制止哀求简直认(不是什么好东西,此项出现,查抄是否被攻击)
TIME-WAIT:等候富足的时间以确保远程TCP吸取到毗连制止哀求简直认
CLOSED:没有任何毗连状态
实例2:列出全部端口
下令:
  1. <code><code>netstat -a
复制代码
输出:
  1. [root@localhost ~]# <code><code>netstat -aActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address        Foreign Address       State   tcp    0   0 localhost:smux       *:*             LISTEN   tcp    0   0 *:svn            *:*             LISTEN   tcp    0   0 *:ssh            *:*             LISTEN   tcp    0  284 192.168.120.204:ssh     10.2.0.68:62420       ESTABLISHED udp    0   0 localhost:syslog      *:*                   udp    0   0 *:snmp           *:*                   Active UNIX domain sockets (servers and established)Proto RefCnt Flags    Type    State     I-Node Pathunix 2   [ ACC ]   STREAM   LISTENING   708833 /tmp/ssh-yKnDB15725/agent.15725unix 2   [ ACC ]   STREAM   LISTENING   7296  /var/run/audispd_eventsunix 2   [ ]     DGRAM          1491  @/org/kernel/udev/udevdunix 4   [ ]     DGRAM          7337  /dev/logunix 2   [ ]     DGRAM          708823 unix 2   [ ]     DGRAM          7539  unix 3   [ ]     STREAM   CONNECTED   7287  unix 3   [ ]     STREAM   CONNECTED   7286  [root@localhost ~]#
复制代码
分析:
体现一个全部的有用毗连信息列表,包罗已创建的毗连(ESTABLISHED),也包罗监听毗连请(LISTENING)的那些毗连。
实例3:体现当前UDP毗连状态
下令:
  1. <code><code><code>netstat -nu
复制代码
输出:
  1. [root@andy ~]# <code><code><code>netstat -nuActive Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address        Foreign Address       State   udp    0   0 ::ffff:192.168.12:53392   ::ffff:192.168.9.120:10000 ESTABLISHED udp    0   0 ::ffff:192.168.12:56723   ::ffff:192.168.9.120:10000 ESTABLISHED udp    0   0 ::ffff:192.168.12:56480   ::ffff:192.168.9.120:10000 ESTABLISHED udp    0   0 ::ffff:192.168.12:58154   ::ffff:192.168.9.120:10000 ESTABLISHED udp    0   0 ::ffff:192.168.12:44227   ::ffff:192.168.9.120:10000 ESTABLISHED udp    0   0 ::ffff:192.168.12:36954   ::ffff:192.168.9.120:10000 ESTABLISHED udp    0   0 ::ffff:192.168.12:53984   ::ffff:192.168.9.120:10000 ESTABLISHED udp    0   0 ::ffff:192.168.12:57703   ::ffff:192.168.9.120:10000 ESTABLISHED udp    0   0 ::ffff:192.168.12:53613   ::ffff:192.168.9.120:10000 ESTABLISHED [root@andy ~]#
复制代码
分析:
实例4:体现UDP端标语的利用环境
下令:
  1. <code><code><code>netstat -apu
复制代码
输出:
  1. [root@andy ~]# <code><code><code>netstat -apuActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address        Foreign Address       State    PID/Program name  udp    0   0 *:57604           *:*                   28094/java     udp    0   0 *:40583           *:*                   21220/java     udp    0   0 *:45451           *:*                   14583/java     udp    0   0 ::ffff:192.168.12:53392   ::ffff:192.168.9.120:ndmp  ESTABLISHED 19327/java     udp    0   0 *:52370           *:*                   15841/java     udp    0   0 ::ffff:192.168.12:56723   ::ffff:192.168.9.120:ndmp  ESTABLISHED 15841/java     udp    0   0 *:44182           *:*                   31757/java     udp    0   0 *:48155           *:*                   5476/java      udp    0   0 *:59808           *:*                   17333/java     udp    0   0 ::ffff:192.168.12:56480   ::ffff:192.168.9.120:ndmp  ESTABLISHED 28094/java     udp    0   0 ::ffff:192.168.12:58154   ::ffff:192.168.9.120:ndmp  ESTABLISHED 15429/java     udp    0   0 *:36780           *:*                   10091/java     udp    0   0 *:36795           *:*                   24594/java     udp    0   0 *:41922           *:*                   20506/java     udp    0   0 ::ffff:192.168.12:44227   ::ffff:192.168.9.120:ndmp  ESTABLISHED 17333/java     udp    0   0 *:34258           *:*                   8866/java      udp    0   0 *:55508           *:*                   11667/java     udp    0   0 *:36055           *:*                   12425/java     udp    0   0 ::ffff:192.168.12:36954   ::ffff:192.168.9.120:ndmp  ESTABLISHED 16532/java     udp    0   0 ::ffff:192.168.12:53984   ::ffff:192.168.9.120:ndmp  ESTABLISHED 20506/java     udp    0   0 ::ffff:192.168.12:57703   ::ffff:192.168.9.120:ndmp  ESTABLISHED 31757/java     udp    0   0 ::ffff:192.168.12:53613   ::ffff:192.168.9.120:ndmp  ESTABLISHED 3199/java      udp    0   0 *:56309           *:*                   15429/java     udp    0   0 *:54007           *:*                   16532/java     udp    0   0 *:39544           *:*                   3199/java      udp    0   0 *:43900           *:*                   19327/java     [root@andy ~]#
复制代码
分析:
实例5:体现网卡列表
下令:
  1. <code><code>netstat -i
复制代码
输出:
  1. [root@andy ~]# <code><code>netstat -iKernel Interface tableIface    MTU Met  RX-OK RX-ERR RX-DRP RX-OVR  TX-OK TX-ERR TX-DRP TX-OVR Flgeth0    1500  0 151818887   0   0   0 198928403   0   0   0 BMRUlo    16436  0  107235   0   0   0  107235   0   0   0 LRU[root@andy ~]#
复制代码
分析:
实例6:体现组播组的关系
下令:
  1. <code><code>netstat -g
复制代码
输出:
  1. [root@andy ~]# <code><code>netstat -gIPv6/IPv4 Group MembershipsInterface    RefCnt Group--------------- ------ ---------------------lo       1   all-systems.mcast.neteth0      1   all-systems.mcast.netlo       1   ff02::1eth0      1   ff02::1:ffff:9b0ceth0      1   ff02::1[root@andy ~]#
复制代码
分析:
实例7:体现网络统计信息
下令:
  1. <code><code>netstat -s
复制代码
输出:
  1. [root@localhost ~]# <code><code>netstat -sIp:  530999 total packets received  0 forwarded  0 incoming packets discarded  530999 incoming packets delivered  8258 requests sent out  1 dropped because of missing routeIcmp:  90 ICMP messages received  0 input ICMP message failed.  ICMP input histogram:    destination unreachable: 17    echo requests: 1    echo replies: 72  106 ICMP messages sent  0 ICMP messages failed  ICMP output histogram:    destination unreachable: 8    echo request: 97    echo replies: 1IcmpMsg:    InType0: 72    InType3: 17    InType8: 1    OutType0: 1    OutType3: 8    OutType8: 97Tcp:  8 active connections openings  15 passive connection openings  8 failed connection attempts  3 connection resets received  1 connections established  3132 segments received  2617 segments send out  53 segments retransmited  0 bad segments received.  252 resets sentUdp:  0 packets received  0 packets to unknown port received.  0 packet receive errors  5482 packets sentTcpExt:  1 invalid SYN cookies received  1 TCP sockets finished time wait in fast timer  57 delayed acks sent  Quick ack mode was activated 50 times  60 packets directly queued to recvmsg prequeue.  68 packets directly received from backlog  4399 packets directly received from prequeue  520 packets header predicted  51 packets header predicted and directly queued to user  1194 acknowledgments not containing data received  21 predicted acknowledgments  0 TCP data loss events  1 timeouts after reno fast retransmit  9 retransmits in slow start  42 other TCP timeouts  3 connections aborted due to timeoutIpExt:  InBcastPkts: 527777
复制代码
分析:
按照各个协议分别体现其统计数据。如果我们的应用步伐(如Web欣赏器)运行速率比力慢,大概不能体现Web页之类的数据,那么我们就可以用本选项来检察一下所体现的信息。我们必要细致检察统计数据的各行,找到堕落的关键字,进而确定题目所在。
实例8:体现监听的套接口
下令:
  1. <code><code>netstat -l
复制代码
输出:
  1. [root@localhost ~]# <code><code>netstat -lActive Internet connections (only servers)Proto Recv-Q Send-Q Local Address        Foreign Address       State   tcp    0   0 localhost:smux       *:*             LISTEN   tcp    0   0 *:svn            *:*             LISTEN   tcp    0   0 *:ssh            *:*             LISTEN   udp    0   0 localhost:syslog      *:*                   udp    0   0 *:snmp           *:*                   Active UNIX domain sockets (only servers)Proto RefCnt Flags    Type    State     I-Node Pathunix 2   [ ACC ]   STREAM   LISTENING   708833 /tmp/ssh-yKnDB15725/agent.15725unix 2   [ ACC ]   STREAM   LISTENING   7296  /var/run/audispd_events[root@localhost ~]#
复制代码
分析:
实例9:体现全部已创建的有用毗连
下令:
  1. <code><code>netstat -n
复制代码
输出:
  1. [root@localhost ~]# <code><code>netstat -nActive Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address        Foreign Address       State   tcp    0  268 192.168.120.204:22     10.2.0.68:62420       ESTABLISHED Active UNIX domain sockets (w/o servers)Proto RefCnt Flags    Type    State     I-Node Pathunix 2   [ ]     DGRAM          1491  @/org/kernel/udev/udevdunix 4   [ ]     DGRAM          7337  /dev/logunix 2   [ ]     DGRAM          708823 unix 2   [ ]     DGRAM          7539  unix 3   [ ]     STREAM   CONNECTED   7287  unix 3   [ ]     STREAM   CONNECTED   7286  [root@localhost ~]#
复制代码
分析:
实例10:体现关于以太网的统计数据
下令:
  1. <code><code>netstat -e
复制代码
输出:
  1. [root@localhost ~]# <code><code>netstat -eActive Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address        Foreign Address       State    User    Inode   tcp    0  248 192.168.120.204:ssh     10.2.0.68:62420       ESTABLISHED root    708795   Active UNIX domain sockets (w/o servers)Proto RefCnt Flags    Type    State     I-Node Pathunix 2   [ ]     DGRAM          1491  @/org/kernel/udev/udevdunix 4   [ ]     DGRAM          7337  /dev/logunix 2   [ ]     DGRAM          708823 unix 2   [ ]     DGRAM          7539  unix 3   [ ]     STREAM   CONNECTED   7287  unix 3   [ ]     STREAM   CONNECTED   7286  [root@localhost ~]#
复制代码
分析:
用于体现关于以太网的统计数据。它列出的项目包罗传送的数据报的总字节数、错误数、删除数、数据报的数目和广播的数目。这些统计数据既有发送的数据报数目,也有吸取的数据报数目。这个选项可以用来统计一些根本的网络流量)
实例11:体现关于路由表的信息
下令:
  1. <code><code>netstat -r
复制代码
输出:
  1. [root@localhost ~]# <code><code>netstat -rKernel IP routing tableDestination   Gateway     Genmask     Flags  MSS Window irtt Iface192.168.120.0  *        255.255.255.0  U     0 0     0 eth0192.168.0.0   192.168.120.1  255.255.0.0   UG    0 0     0 eth010.0.0.0    192.168.120.1  255.0.0.0    UG    0 0     0 eth0default     192.168.120.240 0.0.0.0     UG    0 0     0 eth0[root@localhost ~]#
复制代码
分析:
实例12:列出全部 tcp 端口
下令:
  1. <code><code><code>netstat -at
复制代码
输出:
  1. [root@localhost ~]# <code><code><code>netstat -atActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address        Foreign Address       State   tcp    0   0 localhost:smux       *:*             LISTEN   tcp    0   0 *:svn            *:*             LISTEN   tcp    0   0 *:ssh            *:*             LISTEN   tcp    0  284 192.168.120.204:ssh     10.2.0.68:62420       ESTABLISHED [root@localhost ~]#
复制代码
分析:
实例13:统计呆板中网络毗连各个状态个数
下令:
  1. <code><code><code>netstat -a | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
复制代码
输出:
  1. [root@localhost ~]# <code><code><code>netstat -a | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'ESTABLISHED 1LISTEN 3[root@localhost ~]#
复制代码
分析:
实例14:把状态全都取出来后利用uniq -c统计后再举行排序
下令:
  1. <code><code><code>netstat -nat |awk '{print $6}'|sort|uniq -c
复制代码
输出:
  1. [root@andy ~]# <code><code><code>netstat -nat |awk '{print $6}'|sort|uniq -c   14 CLOSE_WAIT   1 established)  578 ESTABLISHED   1 Foreign   43 LISTEN   5 TIME_WAIT[root@andy ~]# <code><code><code>netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn  576 ESTABLISHED   43 LISTEN   14 CLOSE_WAIT   5 TIME_WAIT   1 Foreign   1 established)[root@andy ~]#**分析:
复制代码
实例15:*检察毗连某服务端口最多的的IP地点
下令:
  1. <code><code><code>netstat -nat | grep "192.168.120.20:16067" |awk '{print $5}'|awk -F: '{print $4}'|sort|uniq -c|sort -nr|head -20
复制代码
输出:
  1. [root@andy ~]# <code><code><code>netstat -nat | grep "192.168.120.20:16067" |awk '{print $5}'|awk -F: '{print $4}'|sort|uniq -c|sort -nr|head -20   8 10.2.1.68   7 192.168.119.13   6 192.168.119.201   6 192.168.119.20   6 192.168.119.10   4 10.2.1.199   3 10.2.1.207   2 192.168.120.20   2 192.168.120.15   2 192.168.119.197   2 192.168.119.11   2 10.2.1.206   2 10.2.1.203   2 10.2.1.189   2 10.2.1.173   1 192.168.120.18   1 192.168.119.19   1 10.2.2.227   1 10.2.2.138   1 10.2.1.208[root@andy ~]#
复制代码
分析:
实例16:找出步伐运行的端口
下令:
  1. <code><code><code>netstat -ap | grep ssh
复制代码
输出:
  1. [root@andy ~]# <code><code><code>netstat -ap | grep sshtcp    0   0 *:ssh            *:*             LISTEN   2570/sshd      tcp    0   0 ::ffff:192.168.120.206:ssh ::ffff:10.2.1.205:54508   ESTABLISHED 13883/14      tcp    0   0 ::ffff:192.168.120.206:ssh ::ffff:10.2.0.68:62886   ESTABLISHED 20900/6       tcp    0   0 ::ffff:192.168.120.206:ssh ::ffff:10.2.2.131:52730   ESTABLISHED 20285/sshd: root@no unix 2   [ ACC ]   STREAM   LISTENING   194494461 20900/6       /tmp/ssh-cXIJj20900/agent.20900unix 3   [ ]     STREAM   CONNECTED   194307443 20285/sshd: root@no unix 3   [ ]     STREAM   CONNECTED   194307441 20285/sshd: root@no [root@andy ~]#
复制代码
分析:
**实例17:**在 <code>netstat 输出中体现 PID 和历程名称
下令:
  1. <code><code>netstat -pt
复制代码
输出:
  1. [root@localhost ~]# <code><code>netstat -ptActive Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address        Foreign Address       State    PID/Program name  tcp    0  248 192.168.120.204:ssh     10.2.0.68:62420       ESTABLISHED 15725/0       [root@localhost ~]#
复制代码
分析:
<code>netstat -p 可以与别的开关一起利用,就可以添加 “PID/历程名称” 到 <code>netstat 输出中,如许 debugging 的时间可以很方便的发现特定端口运行的步伐。
实例18:找出运行在指定端口的历程
下令:
  1. <code><code><code>netstat -anpt | grep ':16064'
复制代码
输出:
  1. [root@andy ~]# <code><code><code>netstat -anpt | grep ':16064'tcp    0   0 :::16064          :::*            LISTEN   24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:192.168.119.201:6462 ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:192.168.119.20:26341 ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:192.168.119.20:32208 ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:192.168.119.20:32207 ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:51303   ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:51302   ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:50020   ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:50019   ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:56155   ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:50681   ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:50680   ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:52136   ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:56989   ESTABLISHED 24594/java     tcp    0   0 ::ffff:192.168.120.20:16064 ::ffff:10.2.1.68:56988   ESTABLISHED 24594/java     [root@andy ~]#
复制代码
分析:
运行在端口16064的历程id为24596,再通过ps下令就可以找到具体的应用步伐了。
ss下令语法

ss是Socket Statistics的缩写。顾名思义,ss下令可以用来获取socket统计信息,它可以体现和<code>netstat类似的内容。但ss的上风在于它可以大概体现更多更具体的有关TCP和毗连状态的信息,而且比<code>netstat更快速更高效。
当服务器的socket毗连数目变得非常大时,无论是利用<code>netstat下令照旧直接cat /proc/net/tcp,实验速率都会很慢。大概你不会有切身的感受,但请信任我,当服务器维持的毗连到达上万个的时间,利用<code>netstat即是浪费 生命,而用ss才是节流时间。
天下武功唯快不破。ss快的法门在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以得到Linux 内核中第一手的信息,这就确保了ss的快捷高效。固然,如果你的体系中没有tcp_diag,ss也可以正常运行,只是服从会变得稍慢。(但仍旧比 <code>netstat要快。)
**1.**下令格式:
ss [参数]
ss [参数] [过滤]
**2.**下令功能:
ss(Socket Statistics的缩写)下令可以用来获取 socket统计信息,此下令输出的结果类似于 <code>netstat输出的内容,但它能体现更多更具体的 TCP毗连状态的信息,且比 <code>netstat 更快速高效。它利用了 TCP协议栈中 tcp_diag(是一个用于分析统计的模块),能直接从得到第一手内核信息,这就使得 ss下令快捷高效。在没有 tcp_diag,ss也可以正常运行。
**3.**下令参数:
  1. <code>-h, --help 帮助信息
  2. -V, --version 程序版本信息
  3. -n, --numeric 不解析服务名称
  4. -r, --resolve    解析主机名
  5. -a, --all 显示所有套接字(sockets)
  6. -l, --listening 显示监听状态的套接字(sockets)
  7. -o, --options    显示计时器信息
  8. -e, --extended    显示详细的套接字(sockets)信息
  9. -m, --memory     显示套接字(socket)的内存使用情况
  10. -p, --processes 显示使用套接字(socket)的进程
  11. -i, --info 显示 TCP内部信息
  12. -s, --summary 显示套接字(socket)使用概况
  13. -4, --ipv4      仅显示IPv4的套接字(sockets)
  14. -6, --ipv6      仅显示IPv6的套接字(sockets)
  15. -0, --packet     显示 PACKET 套接字(socket)
  16. -t, --tcp 仅显示 TCP套接字(sockets)
  17. -u, --udp 仅显示 UCP套接字(sockets)
  18. -d, --dccp 仅显示 DCCP套接字(sockets)
  19. -w, --raw 仅显示 RAW套接字(sockets)
  20. -x, --unix 仅显示 Unix套接字(sockets)
  21. -f, --family=FAMILY 显示 FAMILY类型的套接字(sockets),FAMILY可选,支持 unix, inet, inet6, link, netlink
  22. -A, --query=QUERY, --socket=QUERY
  23.    QUERY := {all|inet|tcp|udp|raw|unix|packet|netlink}[,QUERY]
  24. -D, --diag=FILE   将原始TCP套接字(sockets)信息转储到文件
  25. -F, --filter=FILE  从文件中都去过滤器信息
  26.     FILTER := [ state TCP-STATE ] [ EXPRESSION ]
复制代码
ss下令利用示例

**实例1:**体现TCP毗连
下令:
  1. <code>ss -t -a
复制代码
输出:
  1. [root@localhost ~]# <code>ss -t -aState   Recv-Q Send-Q                Local Address:Port                  Peer Address:Port  LISTEN   0   0                     127.0.0.1:smux                        *:*    LISTEN   0   0                         *:3690                        *:*    LISTEN   0   0                         *:ssh                        *:*    ESTAB   0   0                  192.168.120.204:ssh                    10.2.0.68:49368  [root@localhost ~]#
复制代码
分析:
**实例2:**体现 Sockets 择要
下令:
ss -s
输出:
  1. <code>[root@localhost ~]# ss -s
  2. Total: 34 (kernel 48)
  3. TCP:  4 (estab 1, closed 0, orphaned 0, synrecv 0, timewait 0/0), ports 3
  4. Transport Total   IP    IPv6
  5. \*     48    -     -   
  6. RAW    0     0     0   
  7. UDP    5     5     0   
  8. TCP    4     4     0   
  9. INET   9     9     0   
  10. FRAG   0     0     0   
  11. [root@localhost ~]#
复制代码
分析:
列出当前的established, closed, orphaned and waiting TCP sockets
**实例3:**列出全部打开的网络毗连端口
下令:
  1. <code>ss -l
复制代码
输出:
  1. [root@localhost ~]# <code>ss -lRecv-Q Send-Q                   Local Address:Port                     Peer Address:Port  0   0                       127.0.0.1:smux                          *:*    0   0                           *:3690                          *:*    0   0                           *:ssh                           *:*    [root@localhost ~]#
复制代码
分析:
**实例4:**检察历程利用的socket
下令:
  1. <code>ss -pl
复制代码
输出:
  1. [root@localhost ~]# <code>ss -plRecv-Q Send-Q                   Local Address:Port                     Peer Address:Port  0   0                       127.0.0.1:smux                          *:*    users:(("snmpd",2716,8))0   0                           *:3690                          *:*    users:(("svnserve",3590,3))0   0                           *:ssh                           *:*    users:(("sshd",2735,3))[root@localhost ~]#
复制代码
**实例5:**找出打开套接字/端口应用步伐
下令:
  1. <code><code>ss -lp | grep 3306
复制代码
输出:
  1. [root@localhost ~]# <code>ss -lp|grep 19350   0              *:1935             *:*    users:(("fmsedge",2913,18))0   0          127.0.0.1:19350             *:*    users:(("fmsedge",2913,17))[root@localhost ~]# <code>ss -lp|grep 33060   0              *:3306             *:*    users:(("mysqld",2871,10))[root@localhost ~]#
复制代码
分析:
**实例6:**体现全部UDP Sockets
下令:
  1. <code>ss -u -a
复制代码
输出:
  1. [root@localhost ~]# <code>ss -u -aState   Recv-Q Send-Q                Local Address:Port                  Peer Address:Port  UNCONN   0   0                     127.0.0.1:syslog                       *:*    UNCONN   0   0                         *:snmp                        *:*    ESTAB   0   0                  192.168.120.203:39641                 10.58.119.119:domain [root@localhost ~]#
复制代码
分析:
**实例7:**体现全部状态为established的SMTP毗连
下令:
  1. <code>ss -o state established '( dport = :smtp or sport = :smtp )'
复制代码
输出:
  1. [root@localhost ~]# <code>ss -o state established '( dport = :smtp or sport = :smtp )' Recv-Q Send-Q                   Local Address:Port                     Peer Address:Port  [root@localhost ~]#
复制代码
分析:
**实例8:**体现全部状态为Established的HTTP毗连
下令:
  1. <code>ss -o state established '( dport = :http or sport = :http )'
复制代码
输出:
  1. [root@localhost ~]# <code>ss -o state established '( dport = :http or sport = :http )' Recv-Q Send-Q                   Local Address:Port                     Peer Address:Port  0   0                       75.126.153.214:2164                    192.168.10.42:http  [root@localhost ~]#
复制代码
分析:
**实例9:**枚举出处于 FIN-WAIT-1状态的源端口为 80大概 443,目的网络为 193.233.7/24全部 tcp套接字
下令:
  1. <code>ss -o state fin-wait-1 '( sport = :http or sport = :https )' dst 193.233.7/24
复制代码
输出:
分析:
**实例10:**用TCP 状态过滤Sockets:
下令:
  1. <code>ss -4 state FILTER-NAME-HERE
  2. ss -6 state FILTER-NAME-HERE
复制代码
输出:
  1. <code>[root@localhost ~]#ss -4 state closing
  2. Recv-Q Send-Q                         Local Address:Port                           Peer Address:Port
  3. 1   11094                         75.126.153.214:http                           192.168.10.42:4669
复制代码
分析:
FILTER-NAME-HERE 可以代表以下任何一个:
established
syn-sent
syn-recv
fin-wait-1
fin-wait-2
time-wait
closed
close-wait
last-ack
listen
closing
all : 全部以上状态
connected : 除了listen and closed的全部状态
synchronized :全部已毗连的状态除了syn-sent
bucket : 体现状态为maintained as minisockets,如:time-wait和syn-recv.
big : 和bucket相反.
**实例11:**匹配远程地点和端标语
下令:
  1. <code>ss dst ADDRESS_PATTERN
  2. ss dst 192.168.1.5
  3. ss dst 192.168.119.113:http
  4. ss dst 192.168.119.113:smtp
  5. ss dst 192.168.119.113:443
复制代码
输出:
  1. <code>[root@localhost ~]# ss dst 192.168.119.113
  2. State   Recv-Q Send-Q                Local Address:Port                  Peer Address:Port  
  3. ESTAB   0   0                  192.168.119.103:16014                192.168.119.113:20229  
  4. ESTAB   0   0                  192.168.119.103:16014                192.168.119.113:61056  
  5. ESTAB   0   0                  192.168.119.103:16014                192.168.119.113:61623  
  6. ESTAB   0   0                  192.168.119.103:16014                192.168.119.113:60924  
  7. ESTAB   0   0                  192.168.119.103:16050                192.168.119.113:43701  
  8. ESTAB   0   0                  192.168.119.103:16073                192.168.119.113:32930  
  9. ESTAB   0   0                  192.168.119.103:16073                192.168.119.113:49318  
  10. ESTAB   0   0                  192.168.119.103:16014                192.168.119.113:3844  
  11. [root@localhost ~]# ss dst 192.168.119.113:http
  12. State   Recv-Q Send-Q                Local Address:Port                  Peer Address:Port  
  13. [root@localhost ~]# ss dst 192.168.119.113:3844
  14. State   Recv-Q Send-Q                Local Address:Port                  Peer Address:Port  
  15. ESTAB   0   0                  192.168.119.103:16014                192.168.119.113:3844  
  16. [root@localhost ~]#
复制代码
分析:
**实例12:**匹配本地地点和端标语
下令:
  1. <code>ss src ADDRESS_PATTERN
  2. ss src 192.168.119.103
  3. ss src 192.168.119.103:http
  4. ss src 192.168.119.103:80
  5. ss src 192.168.119.103:smtp
  6. ss src 192.168.119.103:25
复制代码
输出:
  1. <code>[root@localhost ~]# ss src 192.168.119.103:16021
  2. State   Recv-Q Send-Q                Local Address:Port                  Peer Address:Port  
  3. ESTAB   0   0                  192.168.119.103:16021                192.168.119.201:63054  
  4. ESTAB   0   0                  192.168.119.103:16021                192.168.119.201:62894  
  5. ESTAB   0   0                  192.168.119.103:16021                192.168.119.201:63055  
  6. ESTAB   0   0                  192.168.119.103:16021                192.168.119.201:2274  
  7. ESTAB   0   0                  192.168.119.103:16021                192.168.119.201:44784  
  8. ESTAB   0   0                  192.168.119.103:16021                192.168.119.201:7233  
  9. ESTAB   0   0                  192.168.119.103:16021                192.168.119.103:58660  
  10. ESTAB   0   0                  192.168.119.103:16021                192.168.119.201:44822  
  11. ESTAB   0   0                  192.168.119.103:16021                   10.2.1.206:56737  
  12. ESTAB   0   0                  192.168.119.103:16021                   10.2.1.206:57487  
  13. ESTAB   0   0                  192.168.119.103:16021                   10.2.1.206:56736  
  14. ESTAB   0   0                  192.168.119.103:16021                   10.2.1.206:64652  
  15. ESTAB   0   0                  192.168.119.103:16021                   10.2.1.206:56586  
  16. ESTAB   0   0                  192.168.119.103:16021                   10.2.1.206:64653  
  17. ESTAB   0   0                  192.168.119.103:16021                   10.2.1.206:56587  
  18. [root@localhost ~]#
复制代码
分析:
**实例13:**将本地大概远程端口和一个数比力
下令:
  1. <code>ss dport OP PORT
  2. ss sport OP PORT
复制代码
输出:
  1. <code>[root@localhost ~]# ss sport = :http
  2. [root@localhost ~]# ss dport = :http
  3. [root@localhost ~]# ss dport \> :1024
  4. [root@localhost ~]# ss sport \> :1024
  5. [root@localhost ~]# ss sport \< :32000
  6. [root@localhost ~]# ss sport eq :22
  7. [root@localhost ~]# ss dport != :22
  8. [root@localhost ~]# ss state connected sport = :http
  9. [root@localhost ~]# ss \( sport = :http or sport = :https \)
  10. [root@localhost ~]# ss -o state fin-wait-1 \( sport = :http or sport = :https \) dst 192.168.1/24
复制代码
分析:
ss dport OP PORT 远程端口和一个数比力;ss sport OP PORT 本地端口和一个数比力。
OP 可以代表以下恣意一个:
= or ge : 大于或即是端标语
== or eq : 即是端标语
!= or ne : 不即是端标语
< or gt : 小于端标语
> or lt : 大于端标语
**实例14:**ss 和 <code>netstat 服从对比
下令:
  1. time <code><code><code>netstat -attime ss
复制代码
输出:
  1. [root@localhost ~]# time ss  real  0m0.739suser  0m0.019ssys   0m0.013s[root@localhost ~]# [root@localhost ~]# time <code><code><code>netstat -atreal  2m45.907suser  0m0.063ssys   0m0.067s[root@localhost ~]#
复制代码
分析:
用time 下令分别获取通过<code>netstat和ss下令获取步伐和概要占用资源所利用的时间。在服务器毗连数比力多的时间,<code>netstat的服从完全没法和ss比。
telnet下令语法

telnet下令通常用来远程登录。telnet步伐是基于TELNET协议的远程登录客户端步伐。Telnet协议是TCP/IP协议族中的一员,是Internet远程登岸服务的标准协媾和告急方式。它为用户提供了在本地皮算机上完发展途主机工作的 本领。在终端利用者的电脑上利用telnet步伐,用它毗连到服务器。终端利用者可以在telnet步伐中输入下令,这些下令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控礼服务器。要开始一个 telnet会话,必须输入用户名和暗码来登录服务器。Telnet是常用的远程控制Web服务器的方法。
但是,telnet由于接纳明文传送报文,安全性欠好,许多Linux服务器都不开放telnet服务,而改用更安全的ssh方式了。但仍旧有许多别的体系大概接纳了telnet方式来提供远程登录,因此弄清楚telnet客户端的利用方式还是很有须要的。
telnet下令还可做别的用途,好比确定远程服务的状态,好比确定远程服务器的某个端口是否能访问。
**1.**下令格式:
telnet[参数][主机]
**2.**下令功能:
实验telnet指令开启终端机阶段作业,并登入远端主机。
**3.**下令参数:
  1. <code>-8 允许使用8位字符资料,包括输入与输出。
  2. -a 尝试自动登入远端系统。
  3. -b<主机别名> 使用别名指定远端主机名称。
  4. -c 不读取用户专属目录里的.telnetrc文件。
  5. -d 启动排错模式。
  6. -e<脱离字符> 设置脱离字符。
  7. -E 滤除脱离字符。
  8. -f 此参数的效果和指定"-F"参数相同。
  9. -F 使用Kerberos V5认证时,加上此参数可把本地主机的认证数据上传到远端主机。
  10. -k<域名> 使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。
  11. -K 不自动登入远端主机。
  12. -l<用户名称> 指定要登入远端主机的用户名称。
  13. -L 允许输出8位字符资料。
  14. -n<记录文件> 指定文件记录相关信息。
  15. -r 使用类似rlogin指令的用户界面。
  16. -S<服务类型> 设置telnet连线所需的IP TOS信息。
  17. -x 假设主机有支持数据加密的功能,就使用它。
  18. -X<认证形态> 关闭指定的认证形态。
复制代码
telnet下令利用示例

实例1:远程服务器无法访问
下令:
  1. <code>telnet 192.168.120.206
复制代码
输出:
  1. <code>[root@localhost ~]# telnet 192.168.120.209
  2. Trying 192.168.120.209...
  3. telnet: connect to address 192.168.120.209: No route to host
  4. telnet: Unable to connect to remote host: No route to host
  5. [root@localhost ~]#
复制代码
分析:
处理处罚这种环境方法:
(1)确认ip地点是否正确?
(2)确认ip地点对应的主机是否已经开机?
(3)如果主机已经启动,确认路由设置是否设置正确?(利用route下令检察)
(4)如果主机已经启动,确认主机上是否开启了telnet服务?(利用<code>netstat下令检察,TCP的23端口是否有LISTEN状态的行)
(5)如果主机已经启动telnet服务,确认防火墙是否放开了23端口的访问?(利用iptables-save检察)
实例2:域名无法剖析
下令:
  1. <code>telnet www.baidu.com
复制代码
输出:
  1. [root@localhost ~]# <code>telnet www.baidu.comwww.baidu.com/telnet: Temporary failure in name resolution[root@localhost ~]#
复制代码
分析:
处理处罚这种环境方法:
(1)确认域名是否正确
(2)确认本机的域名剖析有关的设置是否正确(/etc/resolv.conf中nameserver的设置是否正确,如果没有,可以利用nameserver 8.8.8.8)
(3)确认防火墙是否放开了UDP53端口的访问(DNS利用UDP协议,端口53,利用iptables-save检察)
实例3:
下令:
输出:
  1. [root@localhost ~]# <code>telnet 192.168.120.206Trying 192.168.120.206...telnet: connect to address 192.168.120.206: Connection refusedtelnet: Unable to connect to remote host: Connection refused[root@localhost ~]#
复制代码
分析:
处理处罚这种环境:
(1)确认ip地点大概主机名是否正确?
(2)确认端口是否正确,是否默认的23端口
实例4:启动telnet服务
下令:
  1. <code>service xinetd restart
复制代码
输出:
  1. <code>[root@localhost ~]# cd /etc/xinetd.d/
  2. [root@localhost xinetd.d]# ll
  3. 总计 124
  4. -rw-r--r-- 1 root root 1157 2011-05-31 chargen-dgram
  5. -rw-r--r-- 1 root root 1159 2011-05-31 chargen-stream
  6. -rw-r--r-- 1 root root 523 2009-09-04 cvs
  7. -rw-r--r-- 1 root root 1157 2011-05-31 daytime-dgram
  8. -rw-r--r-- 1 root root 1159 2011-05-31 daytime-stream
  9. -rw-r--r-- 1 root root 1157 2011-05-31 discard-dgram
  10. -rw-r--r-- 1 root root 1159 2011-05-31 discard-stream
  11. -rw-r--r-- 1 root root 1148 2011-05-31 echo-dgram
  12. -rw-r--r-- 1 root root 1150 2011-05-31 echo-stream
  13. -rw-r--r-- 1 root root 323 2004-09-09 eklogin
  14. -rw-r--r-- 1 root root 347 2005-09-06 ekrb5-telnet
  15. -rw-r--r-- 1 root root 326 2004-09-09 gssftp
  16. -rw-r--r-- 1 root root 310 2004-09-09 klogin
  17. -rw-r--r-- 1 root root 323 2004-09-09 krb5-telnet
  18. -rw-r--r-- 1 root root 308 2004-09-09 kshell
  19. -rw-r--r-- 1 root root 317 2004-09-09 rsync
  20. -rw-r--r-- 1 root root 1212 2011-05-31 tcpmux-server
  21. -rw-r--r-- 1 root root 1149 2011-05-31 time-dgram
  22. -rw-r--r-- 1 root root 1150 2011-05-31 time-stream
  23. [root@localhost xinetd.d]# cat krb5-telnet
  24. \# default: off
  25. \# description: The kerberized telnet server accepts normal telnet sessions, \
  26. \#       but can also use Kerberos 5 authentication.
  27. service telnet
  28. {
  29.     flags      = REUSE
  30.     socket_type   = stream   
  31.     wait      = no
  32.     user      = root
  33.     server     = /usr/kerberos/sbin/telnetd
  34.     log_on_failure += USERID
  35.     disable     = yes
  36. }
  37. [root@localhost xinetd.d]#
复制代码
分析:
设置参数**,通常的设置如下:
service telnet
{
disable = no #启用
flags = REUSE #socket可重用
socket_type = stream #毗连方式为TCP
wait = no #为每个哀求启动一个历程
user = root #启动服务的用户为root
server = /usr/sbin/in.telnetd #要激活的历程
log_on_failure += USERID #登录失败时纪录登任命户名
}
如果要设置允许登录的客户端列表,参加
only_from = 192.168.0.2 #只允许192.168.0.2登录
如果要设置克制登录的客户端列表,参加
no_access = 192.168.0.{2,3,4} #克制192.168.0.2、192.168.0.3、192.168.0.4登录
如果要设置开放时段,参加
access_times = 9:00-12:00 13:00-17:00 # 天天只有这两个时段开放服务(我们的上班时间:P)
如果你有两个IP地点,一个是私网的IP地点如192.168.0.2,一个是公网的IP地点如218.75.74.83,如果你盼望用户只能从私网来登录telnet服务,那么参加
bind = 192.168.0.2
各设置项具体的寄义和语法可参考xined设置文件属性分析(man xinetd.conf)
设置端口,修改services文件:
# vi /etc/services
找到以下两句
telnet 23/tcp
telnet 23/udp
如果前面有#字符,就去掉它。telnet的默认端口是23,这个端口也是黑客端口扫描的告急对象,因此最好将这个端口修改掉,修改的方法很简朴,就是将23这个数字修改掉,改成大一点的数字,好比61123。注意,1024以下的端标语是internet保存的端标语,因此最好不要用,还应该注意不要与别的服务的端口辩说。
启动服务:
  1. <code><code>service xinetd restart
复制代码
实例5:正常telnet
下令:
  1. <code>telnet 192.168.120.204
复制代码
输出:
  1. [root@andy ~]# <code>telnet 192.168.120.204Trying 192.168.120.204...Connected to 192.168.120.204 (192.168.120.204).Escape character is '^]'.  localhost (Linux release 2.6.18-274.18.1.el5 #1 SMP Thu Feb 9 12:45:44 EST 2012) (1)login: rootPassword: Login incorrect
复制代码
分析:
一样寻常环境下不允许root从远程登录,可以先用平凡账号登录,然后再用su -切到root用户。
rcp下令语法

rcp代表“remote file copy”(远程文件拷贝)。该下令用于在盘算机之间拷贝文件。rcp下令有两种格式。第一种格式用于文件到文件的拷贝;第二种格式用于把文件或目次拷贝到另一个目次中。
**1.**下令格式:
rcp [参数] [源文件] [目的文件]
**2.**下令功能:
rcp下令用在远端复制文件或目次,犹如时指定两个以上的文件或目次,且末了的目的地是一个已经存在的目次,则它会把前面指定的全部文件或目次复制到该目次中。
**3.**下令参数:
各选项寄义:
-r 递归地把源目次中的全部内容拷贝到目的目次中。要利用这个选项,目的必须是一个目次。
-p 试图保存源文件的修改时间和模式,忽略umask。
-k 哀求rcp得到在指定地区内的远程主机的Kerberos 允许,而不是得到由krb_relmofhost⑶确定的远程主机地区内的远程主机的Kerberos允许。
-x 为传送的全部数据打开DES加密。这会影响相应时间和CPU利用率,但是可以进步安全性。如果在文件名中指定的路径不是完备的路径名,那么这个路径被表明为相对远程机上同名用户的主目次。如果没有给出远程用户名,就利用当前用户名。如果远程机上的路径包罗特别shell字符,必要用反斜线(\)、双引号(”)或单引号(’)括起来,使全部的shell元字符都能被远程地表明。必要分析的是,rcp不提示输入口令,它通过rsh下令来实验拷贝。
directory 每个文件或目次参数既可以是远程文件名也可以是本地文件名。远程文件名具有如下情势:rname@rhost:path,此中rname是远程用户名,rhost是远程盘算机名,path是这个文件的路径。
**4.**利用实例:
要利用 rcp,必要具备以下条件:
如果体系中有 /etc/hosts 文件,体系管理员应确保该文件包罗要与之举行通讯的远程主机的项。
/etc/hosts 文件中有一行笔墨,此中包罗每个远程体系的以下信息:
internet_address official_name alias
比方:
9.186.10.*** webserver1.com.58.webserver
.rhosts 文件
.rhosts 文件位于远程体系的主目次下,此中包罗本地体系的名称和本地登录名。
比方,远程体系的 .rhosts 文件中的项大概是:
webserver1 root
此中,webserver1 是本地体系的名称,root 是本地登录名。如许,webserver1 上的 root 即可在包罗 .rhosts 文件的远程体系中往返复制文件。
设置过程:
只对root用户收效
\1. 在两边root用户根目次下创建.rhosts文件,并将两边的hostname加进去.在此之前应在两边的 /etc/hosts文件中参加对方的IP和hostname
\2. 把rsh服务启动起来,redhat默认是不启动的。
方法:用实验ntsysv下令,在rsh选项前用空格键选中,确定退出。然后实验:
<code>service xinetd restart即可。
\3. 到/etc/pam.d/目次下,把rsh文件中的auth required /lib/security/pam_securetty.so
一行用“#”表明掉即可。(只有表明掉这一行,才华用root用户登录)
rcp下令利用示例

将文件复制到远程体系
要将本地体系中的文件复制到远程体系,请利用以下下令:
rcplocal_fileremote_hostname:remote_fileEnter
注意,如果当前目次下没有 local_file,则除本地文件名外,还必要提供相对路径(自当前目次开始)或绝对路径名(自 / 开始)。
仅当盼望将 remote_hostname 上的 remote_file 放到其他目次(远程主目次除外)下时,才必要为其指定完备的(绝对)路径。
利用实例1:将当前目次下的 test1 复制到名为 webserver1的远程体系
下令
rcp test1 webserver1:/home/root/test3
分析:
在这种环境下,test1 被复制到远程子目次 test3下,名称仍为 test1 。如果仅提供了远程主机名,rcp 将把 test1 复制到远程主目次下,名称仍为 test1 。
还可以在目的目次中包罗文件名。比方,将文件复制到名为 webserver1的体系中:
rcp test1 webserver1:/home/root/test3
在这种环境下,将 test1 复制到远程目次root 下并将其定名为 test3。
利用实例2:从远程体系复制文件:要将远程体系中的文件复制到本地目次下
下令:
rcp remote_hostname:remote_file local_fileEnter
利用实例:3:将远程体系 webserver1中的 test2复制到当前目次:
下令:
rcp webserver1:/home/root/test2 .Enter
分析:
点 (.) 是“当前目次”的简写情势。在这种环境下,远程目次中的 test2 被复制到当前目次下,名称仍为 test2 。
如果盼望用新名称复制文件,请提供目的文件名。
如果盼望将 test2 复制到本地体系中的其他目次下,请利用以下绝对或相对路径名:
rcp webserver1:/home/root/test2 otherdir/ Enter
大概,如果盼望用其他文件名将文件复制到其他目次下:
rcp webserver1:/home/root/test2 otherdir/otherfile Enter
利用实例4:将目次复制到远程体系:要将本地目次及其文件和子目次复制到远程体系,请同时利用 rcp 和 -r(递归)选项。
下令
rcp –r local_dir remote_hostname:remote_dir Enter
分析:
如果当前目次下没有 local_dir,则除本地目次名外,还必要提供相对路径名(自当前目次开始)或绝对路径名(自 / 顶级目次开始)。别的,如果主目次下没有 remote_dir,则 remote_dir 将必要一个相对路径(自主目次开始)或绝对路径(自 / 开始)。
利用实例5:
要将名为 work 的子目次完备地复制到 webserver1远程盘算机中的主目次下名为 products 的目次,请键入以下内容:
rcp –r work webserver1:/home/root/products Enter
此下令在 webserver1:/home/root/products 下创建名为 work 的目次及其全部内容(假定 /home/root/products 已存在于 webserver1中)。
本示例假定用户处于包罗 work 的本地目次下。否则,必须提供该目次的相对或绝对路径,如 /home/root/work。
利用实例6:从远程体系复制目次:
要将远程目次及其全部文件和子目次复制到本地目次,请在以下语法中利用 rcp 和 -r(递归)选项。
下令:
rcp –r remote_hostname:remote_dir local_dir Enter
要将名为 work 的远程目次复制到当前目次,请键入以下内容:
rcp –r webserver1:/home/root/work .Enter
点 (.) 表现当前目次。将在此目次下创建 work 目次。
scp下令语法

scp是secure copy的简写,用于在Linux下举行远程拷贝文件的下令,和它类似的下令有cp,不外cp只是在本机举行拷贝不能跨服务器,而且scp传输是加密的。大概会轻微影响一下速率。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来。别的,scp还非常不占资源,不会进步多少体系负荷,在这一点上,rsync就远远不及它了。固然 rsync比scp会快一点,但当小文件浩繁的环境下,rsync会导致硬盘I/O非常高,而scp根本不影响体系正常利用。
**1.**下令格式:
scp [参数] [原路径] [目的路径]
**2.**下令功能:
scp是 secure copy的缩写, scp是linux体系下基于ssh登岸举行安全的远程文件拷贝下令。linux的scp下令可以在linux服务器之间复制文件和目次。
**3.**下令参数:
  1. <code>-1 强制scp命令使用协议ssh1
  2. -2 强制scp命令使用协议ssh2
  3. -4 强制scp命令只使用IPv4寻址
  4. -6 强制scp命令只使用IPv6寻址
  5. -B 使用批处理模式(传输过程中不询问传输口令或短语)
  6. -C 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
  7. -p 保留原文件的修改时间,访问时间和访问权限。
  8. -q 不显示传输进度条。
  9. -r 递归复制整个目录。
  10. -v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。  
  11. -c cipher 以cipher将数据传输进行加密,这个选项将直接传递给ssh。  
  12. -F ssh_config 指定一个替代的ssh配置文件,此参数直接传递给ssh。
  13. -i identity_file 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。  
  14. -l limit 限定用户所能使用的带宽,以Kbit/s为单位。   
  15. -o ssh_option 如果习惯于使用ssh_config(5)中的参数传递方式,  
  16. -P port 注意是大写的P, port是指定数据传输用到的端口号  
  17. -S program 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。
复制代码
scp下令利用示例

scp下令的现实应用概述:
从本地服务器复制到远程服务器
(1) 复制文件:
下令格式:
scp local_file remote_username@remote_ip:remote_folder
大概
scp local_file remote_username@remote_ip:remote_file
大概
scp local_file remote_ip:remote_folder
大概
scp local_file remote_ip:remote_file
第1,2个指定了用户名,下令实验后必要输入用户暗码,第1个仅指定了远程的目次,文件名字稳固,第2个指定了文件名
第3,4个没有指定用户名,下令实验后必要输入用户名和暗码,第3个仅指定了远程的目次,文件名字稳固,第4个指定了文件名
(2) 复制目次:
下令格式:
scp -r local_folder remote_username@remote_ip:remote_folder
大概
scp -r local_folder remote_ip:remote_folder
第1个指定了用户名,下令实验后必要输入用户暗码;
第2个没有指定用户名,下令实验后必要输入用户名和暗码;
从远程服务器复制到本地服务器
从远程复制到本地的scp下令与上面的下令类似,只要将从本地复制到远程的下令背面2个参数互换序次就行了。
**实例1:**从远处复制文件到本地目次
下令:
  1. <code>scp root@192.168.120.204:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/
复制代码
输出:
  1. [root@localhost ~]# cd /opt/soft/[root@localhost soft]# ll总计 80072drwxr-xr-x 12 root root   4096 09-21 18:40 fms3.5drwxr-xr-x 3 root root   4096 09-21 17:58 fms4.5drwxr-xr-x 10 root root   4096 10-30 17:15 jdk1.6.0_16drwxr-xr-x 10 root root   4096 09-17 19:27 jdk1.6.0_16.bak-rwxr-xr-x 1 root root 81871260 2009-12-21 jdk-6u16-linux-x64.bindrwxrwxrwx 2 root root   4096 09-21 01:16 mysqldrwxr-xr-x 3 root root   4096 09-21 18:40 setup_filedrwxr-xr-x 9 root root   4096 09-17 19:23 tomcat6.0.32drwxr-xr-x 9 root root   4096 2012-08-14 tomcat_7.0[root@localhost soft]# <code>scp root@192.168.120.204:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/root@192.168.120.204's password: nginx-0.5.38.tar.gz                                        100% 479KB 478.7KB/s  00:00  [root@localhost soft]# ll总计 80556drwxr-xr-x 12 root root   4096 09-21 18:40 fms3.5drwxr-xr-x 3 root root   4096 09-21 17:58 fms4.5drwxr-xr-x 10 root root   4096 10-30 17:15 jdk1.6.0_16drwxr-xr-x 10 root root   4096 09-17 19:27 jdk1.6.0_16.bak-rwxr-xr-x 1 root root 81871260 2009-12-21 jdk-6u16-linux-x64.bindrwxrwxrwx 2 root root   4096 09-21 01:16 mysql-rw-r--r-- 1 root root  490220 03-15 09:11 nginx-0.5.38.tar.gzdrwxr-xr-x 3 root root   4096 09-21 18:40 setup_filedrwxr-xr-x 9 root root   4096 09-17 19:23 tomcat6.0.32drwxr-xr-x 9 root root   4096 2012-08-14 tomcat_7.0[root@localhost soft]#
复制代码
分析:
从192.168.120.204呆板上的/opt/soft/的目次中下载nginx-0.5.38.tar.gz 文件到本地/opt/soft/目次中
**实例2:**从远处复制到本地
下令:
  1. <code>scp -r root@192.168.120.204:/opt/soft/mongodb /opt/soft/
复制代码
输出:
  1. [root@localhost soft]# ll总计 80556drwxr-xr-x 12 root root   4096 09-21 18:40 fms3.5drwxr-xr-x 3 root root   4096 09-21 17:58 fms4.5drwxr-xr-x 10 root root   4096 10-30 17:15 jdk1.6.0_16drwxr-xr-x 10 root root   4096 09-17 19:27 jdk1.6.0_16.bak-rwxr-xr-x 1 root root 81871260 2009-12-21 jdk-6u16-linux-x64.bindrwxrwxrwx 2 root root   4096 09-21 01:16 mysql-rw-r--r-- 1 root root  490220 03-15 09:11 nginx-0.5.38.tar.gzdrwxr-xr-x 3 root root   4096 09-21 18:40 setup_filedrwxr-xr-x 9 root root   4096 09-17 19:23 tomcat6.0.32drwxr-xr-x 9 root root   4096 2012-08-14 tomcat_7.0[root@localhost soft]# <code>scp -r root@192.168.120.204:/opt/soft/mongodb /opt/soft/root@192.168.120.204's password: mongodb-linux-i686-static-1.8.5.tgz                                100%  28MB 28.3MB/s  00:01  README                                              100% 731   0.7KB/s  00:00  THIRD-PARTY-NOTICES                                        100% 7866   7.7KB/s  00:00  mongorestore                                           100% 7753KB  7.6MB/s  00:00  mongod                                              100% 7760KB  7.6MB/s  00:01  mongoexport                                            100% 7744KB  7.6MB/s  00:00  bsondump                                             100% 7737KB  7.6MB/s  00:00  mongofiles                                            100% 7748KB  7.6MB/s  00:01  mongostat                                             100% 7808KB  7.6MB/s  00:00  mongos                                              100% 5262KB  5.1MB/s  00:01  mongo                                               100% 3707KB  3.6MB/s  00:00  mongoimport                                            100% 7754KB  7.6MB/s  00:00  mongodump                                             100% 7773KB  7.6MB/s  00:00  GNU-AGPL-3.0                                           100%  34KB 33.7KB/s  00:00  [root@localhost soft]# ll总计 80560drwxr-xr-x 12 root root   4096 09-21 18:40 fms3.5drwxr-xr-x 3 root root   4096 09-21 17:58 fms4.5drwxr-xr-x 10 root root   4096 10-30 17:15 jdk1.6.0_16drwxr-xr-x 10 root root   4096 09-17 19:27 jdk1.6.0_16.bak-rwxr-xr-x 1 root root 81871260 2009-12-21 jdk-6u16-linux-x64.bindrwxr-xr-x 3 root root   4096 03-15 09:18 mongodbdrwxrwxrwx 2 root root   4096 09-21 01:16 mysql-rw-r--r-- 1 root root  490220 03-15 09:11 nginx-0.5.38.tar.gzdrwxr-xr-x 3 root root   4096 09-21 18:40 setup_filedrwxr-xr-x 9 root root   4096 09-17 19:23 tomcat6.0.32drwxr-xr-x 9 root root   4096 2012-08-14 tomcat_7.0[root@localhost soft]#
复制代码
分析:
从192.168.120.204呆板上的/opt/soft/中下载mongodb 目次到本地的/opt/soft/目次来。
**实例3:**上传本地文件到远程呆板指定目次
下令:
scp /opt/soft/nginx-0.5.38.tar.gz root@192.168.120.204:/opt/soft/scptest
输出:
  1. <code>上传前目标机器的目标目录:
  2. [root@localhost soft]# cd scptest/
  3. [root@localhost scptest]# ll
  4. 总计 0
  5. [root@localhost scptest]# ll
  6. 本地机器上传:
  7. [root@localhost soft]# scp /opt/soft/nginx-0.5.38.tar.gz root@192.168.120.204:/opt/soft/scptest
  8. root@192.168.120.204's password:
  9. nginx-0.5.38.tar.gz                                        100% 479KB 478.7KB/s  00:00  
  10. [root@localhost soft]#
  11. 上传后目标机器的目标目录:
  12. [root@localhost scptest]# ll
  13. 总计 484
  14. -rw-r--r-- 1 root root 490220 03-15 09:25 nginx-0.5.38.tar.gz
  15. [root@localhost scptest]#
复制代码
分析:
复制本地opt/soft/目次下的文件nginx-0.5.38.tar.gz 到远程呆板192.168.120.204的opt/soft/scptest目次
**实例4:**上传本地目次到远程呆板指定目次
下令:
  1. <code>scp -r /opt/soft/mongodb root@192.168.120.204:/opt/soft/scptest
复制代码
输出:
  1. 上传前目的呆板的目的目次:[root@localhost ~]# cd /opt/soft/scptest/[root@localhost scptest]# ll总计 484-rw-r--r-- 1 root root 490220 03-15 09:25 nginx-0.5.38.tar.gz[root@localhost scptest]# 本地呆板上传:[root@localhost ~]# <code>scp -r /opt/soft/mongodb root@192.168.120.204:/opt/soft/scptestroot@192.168.120.204's password: mongodb-linux-i686-static-1.8.5.tgz                                100%  28MB 28.3MB/s  00:01  README                                              100% 731   0.7KB/s  00:00  THIRD-PARTY-NOTICES                                        100% 7866   7.7KB/s  00:00  mongorestore                                           100% 7753KB  7.6MB/s  00:00  mongod                                              100% 7760KB  7.6MB/s  00:01  mongoexport                                            100% 7744KB  7.6MB/s  00:00  bsondump                                             100% 7737KB  7.6MB/s  00:00  mongofiles                                            100% 7748KB  7.6MB/s  00:00  mongostat                                             100% 7808KB  7.6MB/s  00:01  mongos                                              100% 5262KB  5.1MB/s  00:00  mongo                                               100% 3707KB  3.6MB/s  00:00  mongoimport                                            100% 7754KB  7.6MB/s  00:01  mongodump                                             100% 7773KB  7.6MB/s  00:00  GNU-AGPL-3.0                                           100%  34KB 33.7KB/s  00:00  [root@localhost ~]# 上传后目的呆板的目的目次:[root@localhost scptest]# ll总计 488drwxr-xr-x 3 root root  4096 03-15 09:33 mongodb-rw-r--r-- 1 root root 490220 03-15 09:25 nginx-0.5.38.tar.gz[root@localhost scptest]#
复制代码
分析:
​ 上传本地目次 /opt/soft/mongodb到远程呆板192.168.120.204上/opt/soft/scptest的目次中去

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作