三分钟速学linux网络通讯命令

在这里插入图片描述

一、ping命令 - 连通性测试

  1. ping 简介:
    ping命令-网工神器,主要用来测试主机之间网络的连通性,基于icmp实现,linux和Windows下运行ping命令有所不同,windows 一般会发出4个请求就结束运行该命令( ping -t 和linux效果差不多);而Linux下不会自动终止,此时需要我们按CTR+C终止或者使用-c参数为ping命令指定发送的请求数目。
    在这里插入图片描述
  2. 语法格式: ping【参数】【目标主机】
  3. 常用参数
参数 含义
d 使用Socket的SO_DEBUG功能
-c 指定发送报文的次数
-i 指定收发信息的间隔时间
-I 使用指定的网络接口送出数据包
-l 设置在送出要求信息之前,先行发出的数据包
-n 只输出数值
-p 设置填满数据包的范本样式
-q 不显示指令执行过程
-R 记录路由过程
-s 设置数据包的大小
-t 设置存活数值TTL的大小
-v 详细显示指令的执行过程
  1. 应用实例
  • 检查和百度的连通性(ping 4次,每次间隔四秒并记录路由信息)
ping -c 4 -i 4 -R www.baidu.com

在这里插入图片描述

  • 利用ping命令获取指定网站的IP地址
ping -c 1 www.baidu.com | grep from | cut -d " " -f 4

二、netstat命令 - 显示网络状态

  1. netstat命令简介:
    Netstat 用于显示与IP 、TCP 、UDP 和ICMP 协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
  2. 常用的参数:
参数 含义
-a 显示所有的连接
-r 显示内置路由表
-l 显示监听服务器套接字
-i 显示网卡信息
-n 不解析名称(不把端口解析成服务)
-g 显示组播信息
-t 显示tcp传输协议的连线状况
-u 显示UDP传输协议的连线状况
-s 显示网络统计
-p 显示正在使用Socket的程序识别码和程序名称

3.应用实例

  • 显示本机的tcp和udp连接,监听服务端口并显示pid和程序名
netstat -lntup  

在这里插入图片描述

-统计机器中网络连接各个状态个数

netstat -an | awk '/^tcp/ {++S[$NF]}  END {for (a in S) print a,S[a]} '

在这里插入图片描述

-查看连接某服务端口最多的的IP地址

netstat -ant|grep "*"|awk '{print $5}'|awk -F: '{print $1}'|sort -nr|uniq -c
  • 查看程序运行的端口
netstat -ap | grep nginx

在这里插入图片描述

  • 显示核心路由
netstat -rn

在这里插入图片描述

三、ip命令-显示与操作路由

  1. ip命令简介:
    ip命令 --网工神器 !!! 用来显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下功能强大的网络配置工具。
  2. 语法格式:ip【参数】
  3. 常用参数:

参数|含义
-s|输出更详细的信息
-f |强制使用指定的协议族
-4 |指定使用的网络层协议是IPv4协议
-6 |指定使用的网络层协议是IPv6协议
-r |显示主机时,不使用IP地址,而使用主机的域名

  1. 应用实例:
  • 显示分配给所有网络接口的地址
    ip addr
    在这里插入图片描述
  • 显示网络设备运行状态
ip link list

在这里插入图片描述

  • 显示内核中的当前邻居表和核心路由表。
ip neigh
ip route

在这里插入图片描述

四、ifconfig命令-显示或设置网络设备

  1. ifconfig命令简介
    用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,需要修改网卡的配置文件
    注意:网卡文件在 /etc/sysconfig/network-scripts ,我们将有一期详解网卡编辑
    在这里插入图片描述
  2. 语法格式
ifconfig [网络设备][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<网络设备类型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>][media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP地址]
  1. 常用参数:
参数 含义
add<地址> 设置网络设备IPv6的IP地址
del<地址> 删除网络设备IPv6的IP地址
down 关闭指定的网络设备
up 启动指定的网络设备
IP地址 指定网络设备的IP地址
  1. 应用实例
  • 显示网络设备信息:
    ifconfig
    在这里插入图片描述
  • 用ifconfig修改MAC地址配置IP地址:
ifconfig eth0 down
ifconfig eth0 hw ether 00:16:3e:2e:1c:84
ifconfig eth0 up
ifconfig eth0 172.17.138.121

注意:云端服务器就不要测试改etho网卡信息(如果关闭了etho 重启可以解决ssh连接不上的问题)不要问我为什么知道……

五、ss命令-显示或动套接字

  1. **ss命令简介:**ss命令用来显示处于活动状态的套接字信息。它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。
  2. 语法格式:ss [参数]
  3. 常用参数: --太多了
参数 含义
-n 不解析服务名称,已数字方式显示
-a 显示所有套接字
-l 显示处于监听状态的套接字
-o 显示计时器信息
-e 显示详细的套接字信息
-m 显示套接字的内存使用情况
-p 显示使用套接字的进程
-i 显示内部的TCP信息
-s 显示套接字使用概况
-4 仅显示ipv4的套接字
-6 仅显示ipv6的套接字
-0 显示PACKET套接字
-t 只显示TCP套接字
-u 只显示UDP套接字
-d 只显示DCCP套接字
-w 只显示RAW套接字
-x 只显示 Unix套接字
-D 将原始TCP套接字信息转储到文件
  1. 应用实例:
  • 显示TCP套接字:
ss -t -a 

在这里插入图片描述
-显示套接字使用概况:
ss -s
在这里插入图片描述

六、小结

无论同一种功能有多少种实现办法,我们都要有自己最熟悉的一种,能看懂其他的实现办法,这就是我们的目的
努力学习追赶超越

发布了96 篇原创文章 · 获赞 895 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/weixin_42767604/article/details/105745227