tcpdump命令详解
tcpdump [-AennqX] [-i 接口] [-w 存储文件名] [-c 次数] [-r 文件] [所要摘取的数据包数据形式]
选项与参数
-A:数据包的内容以ASCII显示,通常用来抓取WWW的网页数据包数据
-e:使用数据链路层(OSI第二层)的MAC数据包来显示
-nn:直接以IP及port number显示,而非主机名与服务名称
-q:仅列出较为简短的数据包信息,每一行的内容比较精简
-X:可以勒出十六进制(hex)以及ASCII的数据包内容,对应监听数据包内容很有用
-i:后面接要监听的网络接口,例如eth0 lo ppp0等的界面
-w:如果你要将监听所得的数据包存储下来,用这个参数就对了,后面接文件名
-r:从后面接的文件将数据包数据读出来。这个文件是已经存在的文件,并且这个文件是由-w所制作出来的
-c:监听的数据包数,如果没有这个参数,tcpdump会持续不断的监听
范例1:以IP与port number获取eth0这个网卡上的数据,持续3s
tcpdump -i eth0 -nn
[root@Action www]# tcpdump -i eth0 -nn
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
13:07:01.570199 IP 10.202.72.116.53 > 10.51.105.19.62017: 8815 4/2/4 CNAME www.cnz5.com., CNAME ss2-china.com., A 45.113.123.18, A 45.113.123.13 (250)
13:07:22.176218 IP 10.51.105.19.123 > 100.100.3.1.123: NTPv4, Client, length 48
13:07:27.445824 ARP, Request who-has 10.51.111.247 tell 10.51.105.19, length 28
13:07:27.445945 ARP, Reply 10.51.111.247 is-at 70:f9:6d:ee:6a:af, length 28
13:07:30.178253 IP 10.51.105.19.123 > 100.100.5.1.123: NTPv4, Client, length 48
13:07:38.178260 IP 10.51.105.19.123 > 100.100.3.1.123: NTPv4, Client, length 48
13:07:46.177498 IP 10.51.105.19.123 > 100.100.5.1.123: NTPv4, Client, length 48
13:07:54.172070 IP 10.51.105.19.123 > 100.100.3.1.123: NTPv4, Client, length 48
13:08:01.731852 IP 10.51.105.19.15384 > 10.202.72.118.53: 37476+ A? cnz.co. (24)
13:08:01.845845 IP 10.202.72.118.53 > 10.51.105.19.15384: 37476 4/2/4 CNAME www.cnz5.com., CNAME ss2-china.com., A 45.113.123.13, A 45.113.123.18 (246)
13:08:02.178239 IP 10.51.105.19.123 > 100.100.5.1.123: NTPv4, Client, length 48
13:08:07.708838 ARP, Request who-has 10.51.111.247 tell 10.51.105.19, length 28
13:08:07.708912 ARP, Reply 10.51.111.247 is-at 70:f9:6d:ee:6a:af, length 28
^C
13 packets captured
13 packets received by filter
0 packets dropped by kernel
说明
13:07:01.570199 该数据捕获的时间
IP 通过的通信协议IP
10.202.72.116.53 > 传输端是10.51.105.19.62017,传送的port number是62017,大于(>)的符号指的是数据包的传输方向
tcpdump -i eth0 -nn port 21
tcpdump -i lo -nn
tcpdump -i lo -nn -X 'port 21' //可以监听到ftp的帐号密码
tcpdump -i lo -nn -X 'port 22 and src host 192.168.1.101'
//监听来自eth0网卡,且通信协议为port22,目标数据包来源为192.168.1.101的数据包
route [-nee]
route add [-net][-host] [网络或主机] netmask [mask] [gw|dev]
route del [-net][-host] [网络或主机] netmask [mask] [gw|dev]
查看的参数
-n:不要使用通信协议或主机名,直接使用IP或port number
-ee:显示更详细的信息
增加add与删除del路由的相关参数
-net:表示后面接的路由为一个网络
-host:表示后面接的为连接到单部主机的路由
netmask:与网络相关,可以设置netmask决定网络的大小
gw:gateway的简写,后面接的是ip的数值,与dev不同
dev:如果只是要指定由那一块网卡连接出去,则使用这个设置,后面接eth0等
范例1:单纯的查看路由状态
route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
123.57.204.0 0.0.0.0 255.255.252.0 U 0 0 0 eth1
10.51.104.0 0.0.0.0 255.255.248.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1003 0 0 eth1
172.16.0.0 10.51.111.247 255.240.0.0 UG 0 0 0 eth0
100.64.0.0 10.51.111.247 255.192.0.0 UG 0 0 0 eth0
10.0.0.0 10.51.111.247 255.0.0.0 UG 0 0 0 eth0
0.0.0.0 123.57.207.247 0.0.0.0 UG 0 0 0 eth1
route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
123.57.204.0 255.255.252.0 U 0 0 0 eth1
10.51.104.0 255.255.248.0 U 0 0 0 eth0
link-local 255.255.0.0 U 1002 0 0 eth0
link-local 255.255.0.0 U 1003 0 0 eth1
172.16.0.0 10.51.111.247 255.240.0.0 UG 0 0 0 eth0
100.64.0.0 10.51.111.247 255.192.0.0 UG 0 0 0 eth0
10.0.0.0 10.51.111.247 255.0.0.0 UG 0 0 0 eth0
default 123.57.207.247 0.0.0.0 UG 0 0 0 eth1
route -n和route输出结果不同,-n参数会显示出ip,而只使用route,显示的是"主机名",解析会有些慢,default=0.0.0.0/0.0.0.0
Destination、Genmask:这两个参数分别是network与netmask,
Gateway:该网络是通过那个gateway连接出去的,如果显示0.0.0.0表示该路由是直接由本级传送,也就是可以通过局域网的mac直接发送,如果显示ip的话,表示该路由需要经过路由器网关的帮忙才能够发送出去。
Flags:共有多个标志,代表的意义如下
U(route is up):该路由是启动的
H(target is a hot):目标是一台主机(ip)而非网络
G(use gateway):需要通过外部的主机来传递数据包
R(reinstate route for dynamic routing):使用动态路由时,恢复路由信息的标志
D(dynamically installed by daemon or redirect):动态路由
M(modified from routing daemon or redirect):
!(reject route):这个路由将不会被接受(用来阻止不安全的网络)
路由排列顺序,依序由小网络(Class C)逐渐到大网络,最后则是默认路由
范例二 路由的增加与删除
route del -net 169.254.0.0 netmask 255.255.0.0 dev eht0
删除168.254.0.0这个网络,删除的时候信息都要写入,netmask,dev等参数
route add -net 192.168.100.0 netmask 255.255.255.0 dev eth0
增加一条路由,这个路由的设置必须要能够与你的网络互通
route add default gw 192.168.1.250
增加默认路由
一般一个新的主机环境
ifconfig eht0 192.168.1.100;route add default gw 192.1687.1.254
已有 0 条评论