设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 数据 手机 公司
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

Linux-细说Linux的网络篇(5)

发布时间:2019-02-14 09:40 所属栏目:117 来源:浮游于星辰大海
导读:Linux中和dns有关的配置分别为:host文件,网卡知道的dns服务地址,resolv.conf指定的服务。在linux可以使用nslookup和dig来查询域名解析的工具。 usage:nslookup(选项)参数 选项: -sil:不显示任何警告信息。 实例: $

Linux中和dns有关的配置分别为:host文件,网卡知道的dns服务地址,resolv.conf指定的服务。在linux可以使用nslookup和dig来查询域名解析的工具。

  1. usage: nslookup (选项) 参数 
  2. 选项:  
  3.     -sil:不显示任何警告信息。 
  4. 实例: 
  5.     $ nslookup www.google.com 
  6.  
  7. usage: dig (选项) 参数 
  8. 选项: 
  9.   @<服务器地址>:指定进行域名解析的域名服务器; 
  10.   -b<ip地址>:当主机具有多个IP地址,指定使用本机的哪个IP地址向域名服务器发送域名查询请求; 
  11.   -f<文件名称>:指定dig以批处理的方式运行,指定的文件中保存着需要批处理查询的DNS任务信息; 
  12.   -P:指定域名服务器所使用端口号; 
  13.   -t<类型>:指定要查询的DNS数据类型; 
  14.   -x<IP地址>:执行逆向域名查询; 
  15.   -4:使用IPv4; 
  16.   -6:使用IPv6; 
  17.   -h:显示指令帮助信息。 
  18. 实例: 
  19.     # 查看域名 
  20.     $ dig www.google.com 
  21.     # 查看MX记录 
  22.     $ dig www.google.com -t MX 
  23.     # 查看CNAME 
  24.     $ dig www.google.com -t CNAME 
  25.     # 指定dns,例如查询8.8.8.8中的0opslab.com记录 
  26.     $ dig +short @8.8.8.8 0opslab.com 
  27.     # 查看完整的解析信息 
  28.     $ dig +trace 0opslab.com 

网络监控

网络监控不论是开发还是运维都应实时掌握的一个数据,在平时开发中有云服务提供的监控界面,和统一部署的监控工具zabbix和nagios等服务。但是利用系统默认提供的命令查看和监控网络也是必备技能。系统提供的常用工具有,tcpdump,dstat等。另外有一些比较好用的第三方监控软件,iftop,iptraf,nload等。

监控总体带宽使用――nload、bmon、slurm、bwm-ng、cbm、speedometer和netload

监控总体带宽使用(批量式输出)――vnstat、ifstat、dstat和collectl

每个套接字连接的带宽使用――iftop、iptraf、tcptrack、pktstat、netwatch和trafshow

每个进程的带宽使用――nethogs

tcpdump

说道网络监控,在linux有款工具不得不说,它就是tcpdump,他是一款命令行下的sniffer工具,dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支 持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。

  1. usage :tcpdum (选项) 
  2. 选项: 
  3.   -a:尝试将网络和广播地址转换成名称; 
  4.   -c<数据包数目>:收到指定的数据包数目后,就停止进行倾倒操作; 
  5.   -d:把编译过的数据包编码转换成可阅读的格式,并倾倒到标准输出; 
  6.   -dd:把编译过的数据包编码转换成C语言的格式,并倾倒到标准输出; 
  7.   -ddd:把编译过的数据包编码转换成十进制数字的格式,并倾倒到标准输出; 
  8.   -e:在每列倾倒资料上显示连接层级的文件头; 
  9.   -f:用数字显示网际网络地址; 
  10.   -F<表达文件>:指定内含表达方式的文件; 
  11.   -i<网络界面>:使用指定的网络截面送出数据包; 
  12.   -l:使用标准输出列的缓冲区; 
  13.   -n:不把主机的网络地址转换成名字; 
  14.   -N:不列出域名; 
  15.   -O:不将数据包编码最佳化; 
  16.   -p:不让网络界面进入混杂模式; 
  17.   -q :快速输出,仅列出少数的传输协议信息; 
  18.   -r<数据包文件>:从指定的文件读取数据包数据; 
  19.   -s<数据包大小>:设置每个数据包的大小; 
  20.   -S:用绝对而非相对数值列出TCP关联数; 
  21.   -t:在每列倾倒资料上不显示时间戳记; 
  22.   -tt: 在每列倾倒资料上显示未经格式化的时间戳记; 
  23.   -T<数据包类型>:强制将表达方式所指定的数据包转译成设置的数据包类型; 
  24.   -v:详细显示指令执行过程; 
  25.   -vv:更详细显示指令执行过程; 
  26.   -x:用十六进制字码列出数据包资料; 
  27.   -w<数据包文件>:把数据包数据写入指定的文件。 
  28. 实例: 
  29.     # 截取所有数据包 
  30.     $ tcpdump 
  31.     # 监视指定接口上的数据包 
  32.     $ tcpdump -i eth1 
  33.     # 打印所有进入或离开sundown的数据包 
  34.     $ tcpdump host sundown 
  35.     # 也可以指定ip,例如截获所有210.27.48.1 的主机收到的和发出的所有的数据包 
  36.     $ tcpdump host 210.27.48.1  
  37.     # 打印所有hello 月hot或者与ace之间的通信包 
  38.     $ tcpdump host hello and \( hot or ace \) 
  39.     # 主机210.27.48.1 和主机210.27.48.2 或210.27.48.3的通信 
  40.     $ tcpdump host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 \) 
  41.     # 打印ace与任何其他主机之间通信的IP 数据包, 但不包括与helios之间的数据包. 
  42.     $ tcpdump ip host ace and not helios 
  43.     # 如果想要获取主机210.27.48.1除了和主机210.27.48.2之外所有主机通信的ip包,使用命令: 
  44.     $ tcpdump ip host 210.27.48.1 and ! 210.27.48.2 
  45.     # 截获主机hostname发送的所有数据 
  46.     $ tcpdump -i eth0 src host hostname 
  47.     # 监视所有送到主机hostname的数据包 
  48.     $ tcpdump -i eth0 dst host hostname 
  49.      # 如果想要获取主机210.27.48.1接收或发出的telnet包,使用如下命令 
  50.     $ tcpdump tcp port 23 and host 210.27.48.1 
  51.     # 对本机的udp 123 端口进行监视 123 为ntp的服务端口 
  52.     $ tcpdump udp port 123  

dstat

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读