最近进行了网络迁移的工作,大致对linux的网络命令做一个简单的纪录

  • 查看IP,基本网络配置
ip addr show  显示所有网络设备的ip等基本信息
ifconfig device_name  显示某块网卡的详细信息或者所有网卡的信息
 其中的frame表示由于CRC引起的错误包的数量,过多一般是硬件问题
overruns为网卡没有来的急处理丢掉的报
  • ethtool
ethtool -i device_name 显示网络设备驱动信息
ethtool -S device_name 显示网络设备的详细统计信息(接收到的包,发出去的报,错误包等)
  • ping命令快速测试网络质量
ping -c count -f IP   f参数为flood ping只有root用户可执行,可以用来测试网络质量,很快的发送上万个包
  • 网络测试工具,检测 iperf测试网卡速度,iftop/iptraf Linux下监测网络流量工具

  • route

route add -net 192.168.1.0/255.255.255.0 gw 192.168.1.1  添加一条路由记录
  • 小技巧,查看每个IP连接数
    sed -n 's%.* src=\([0-9]*.[0-9]*.[0-9.]*\).*%\1%p' /proc/net/nf_conntrack  | sort | uniq -c   #部分机器可能不发查看
    
netstat -n | awk '/^tcp/ {n=split($(NF-1),array,":");if(n<=2)++S[array[(1)]];else++S[array[(4)]];++s[$NF];++N} END {for(a in S){printf("%-20s %s\n", a, S[a]);++I}printf("%-20s %s\n","TOTAL_IP",I);for(a in s) printf("%-20s %s\n",a, s[a]);printf("%-20s %s\n","TOTAL_LINK",N);}'    #仅TCP连接