蓝盟IT外包,程序员应该掌握的常见网络问题的定位工具

发布者:上海IT外包来源:http://www.lanmon.net点击数:1025

蓝盟IT小贴士,来喽!
在项目的日常运输过程中,经常会遇到各种奇怪的互联网问题。 排除网络问题将成为合格程序员的必备技能。 以下是日常工作中快速确定网络问题常用的一些命令。
这是一个常用的小工具,用于检查两个服务器之间是否可以成功交换包。 ping命令向对方主机发送ICMP消息。 如果ping成功,则表示两台主机之间的网络链接很顺利。 如果ping不通,首先需要确认对方是否停止了ping服务。 如果没有停止,则需要检查双方的互联网链接问题。
电信网
该命令主要用于检查与对方端口的网络连接性,如果telnet通过,则证明TCP的3次握手成功,即网络层顺利。 如果telnet不通,则需要确认对方是否启动了合适的服务端口。 如果已启动,则需要检查双方的防火墙策略等。
ifconfig
ifconfig命令不仅可以显示网卡的信息,还可以更改网络配置。 例如,查看网卡信息ifconfig  -a; 启动网卡ifconfig  eth0 up  停止NICifconfigETH0down等操作。
除了使用ifconfig显示和配置网卡信息外,还可以在ip  link  show中显示网卡信息,从而启动网卡信息ip  link  set  down  eth0; 停止网卡ip  link  set  up  eth1等的操作。
注意:对于SSH链接,请勿启动已停止的网卡进行操作。
路由
route命令通常用于显示和配置服务路由信息。 添加或删除显示路由信息的路由- n或路由- nee路由信息的路由-网络地址网络掩码dev
同样,除了route命令外,还可以使用ip  route  show显示路由信息。 等价于路线n。 这里建议使用ip  route命令。
跟踪路径
此命令显示从源地址到目标地址的根路径。 例如,traceroute   www.baidu.com用于判断与目标地址之间通过了什么样的网络设备。 在windows上为跟踪美国航空母舰
这个命令比较强大,也是程序员日常常用的命令。 此命令显示服务器的网络状态。 例如,显示服务器当前的所有套接字链接netstat  -a。 表示UDP/TCP端口使用情况的netstat  -apu/netstat  -apt; 显示网络统计信息的netstat  -s; 检查8080端口的状态netstat  -anp|grep  8080。
等效于netstat的命令是ss命令。 ss  -l列出本机打开的所有端口。 ss  -t/u  -a显示所有的tcp/udp链接。 确认链接属于哪个进程ss  -tp。 验证本地端口的状态ss  -t  src  ip:8080。 这里建议使用ss命令。
tcpdump
网络捕获工具在发生奇怪的网络问题时,通过tcpdump进行网络捕获工具,分析定位问题。 基于源IP捕获tcpdump-ieth2src  192.168.199.100时,仅通过名为eth  2的网卡捕获源地址为192.168.199.100的网络包当然,也可以指定端口捕获,如tcpdump  src端口8088。 总之这个命令非常强大,在这里就不详细介绍了。 有兴趣的人可以自己知道。
美国地图
这是网络嗅探器和扫描工具,做网络安全的伙伴很熟悉。 经常用于检查对方主机开放的是哪个端口。 例如,也可以检查对方主机开放的端口nmap  -PS  192.168.199.100,或者检测目标IP的操作系统nmap  -O  192.168.199.100 总之,这个命令做网络安全的人多,程序员用的人少。 有兴趣的人可以深入研究一下这个命令及其强度。
总结

对于一些问题的定位,上述小工具通过两个不同的命令可以得到同样的效果。 例如ifconfig  -a和IP链路显示; 路由和IP路由显示; 以及netstat和ss。 这是因为ifconfig和netstat等命令来自net-tools工具包,而ip  link和ss等命令来自iproute2工具包。 net-tools将停止开发,许多新操作系统不是默认附带的工具包,如果您想使用,则需要单独安装。 iproute2是用于替换net-tools的,默认情况下安装了许多新版本的linux。 此外,iproute2包中的许多命令在功能和性能上均优于net-tools包中提供的命令。 在这里,我从网上找了说明两个工具包的命令比较的图片。

文/上海蓝盟  IT外包专家

IT外包
>
400-635-8089
立即
咨询
电话咨询
服务热线
400-635-8089
微信咨询
微信咨询
微信咨询
公众号
公众号
公众号
返回顶部