Linux基础篇之网络命令

在Linux中,主要使用以下几个命令来查看或测试与网络有关的信息。

一、ip 命令 (显示/操作路由、设备、策略路由和隧道)

  1、查看网卡的的相关信息(包括有网卡名称、网卡的MAC地址、IP地址、网卡的状态等主要信息)

  ip a/add/address   

  

   2、为网卡添加/删除IP地址(添加/删除的IP地址都是临时的,重启系统便会恢复)

  ip a/add/address  add/delete  IP地址/子网掩码   dev  网卡名称

  

   3、查看网卡路由表

  ip r/ro/route

  

   4、添加/删除路由表(添加/删除的路由都是临时的,重启系统便会恢复)

  ip r/ro/route   add/delete    路由信息  dev  网卡名称

  

  5、其他补充

  

二、ifconfig 命令(需要安装 net-tools)  1、ifconfig (不显示处于关闭状态的网卡信息)     ifconfig -a  (显示包含处于关闭状态的所有的网卡信息)    ifconfig 网卡名称  (查看指定网卡信息)

  

  ifconfig 命令除了可以查看网卡的状态、IP地址、子网掩码、广播地址、MAC地址等,还可以查看以下信息。

     RX packets:网络从启动到现在为止接收的数据包大小,单位是字节,error 发生错误的数据包,dropped 被丢弃的数据包
  TX packets:网络从启动到现在为止发送的数据包大小,单位是字节,error 发生错误的数据包,dropped 被丢弃的数据包
  collisions:发生碰撞的数据包,如果发生太多次,表明网络状况不太好
  txqueuelen:传输数据的缓冲区的储存长度
  RX bytes:总接收字节总量
  TX bytes:总发送字节总量

  2、ifconfig  网卡名称  up/down   (开启或关闭指定网卡)

  3、ifconfig  网卡名称  IP地址/子网掩码  (临时修改网卡的IP地址/子网掩码)

  4、ifconfig 网卡名称:0   (配置网卡的虚拟接口IP,相当于给网卡再加一个IP地址)

 三、ping 命令(主要是探测主机的通信情况)

  1、ping  -b  网段的广播地址   (探测此网段中多少可以通信的主机)

  2、ping  -c 次数   IP地址         (对目标IP地址ping的次数,默认状态下一直ping,直至Ctrl+C 终止)

四、netstat 命令 (需安装  net-tools  这个依赖包,这个命令可以打印网络连接、路由表、接口统计数据、伪装连接和多播成员关系)

  1、netstat  -a             列出所有网络状态。

  2、netstat  -c 秒数     指定刷新网络状态的间隔时间

  3、netstat  -n             使用IP地址和端口号显示,不使用域名与服务名

  4、netstat  -p             显示PID和程序名

  5、netstat  -t              显示使用TCP协议端口的连接状况

  6、netstat  -u             显示使用UDP协议端口的连接状况

  7、netstat  -l              显示监听状态的连接

  8、netstat  -r              显示路由表

  以上选项可以组合使用:

  查看本机开启的端口

  

      在上图中有下几种参数。

  Proto                       网络连接协议

  Recv-Q                   表示本机收到的,但还未被进程取走的数据

  Send-Q                   表示本机发送的,但目的机还未收到的数据

  Local Address         本机的IP地址和端口号

  Foreign Address     远程主机的IP地址和端口号

  State                       状态

  PID/Program name  程序的PID和程序名(由此可以得知是什么程序正在占用)

  其中常见的状态以下几种(一般情况下主要使用前两者):

  LISTEN                监听状态(只要TCP协议需要监听,UDP协议不需要监听)

  ESTABLISHED     已经建立连接的状态(若使用 -l  选项,是看不到此里连接状态)

  SYN_SENT           主动发起连接的数据包

  SYN_RECV      收到主动连接的数据包

  FIN_WAIT1    正在中断的连接

  FIN_WAIT2    已经中断的连接

  TIME_WAIT   已经中断连接,但是套接字还在等待结束。

  CLOSED     套接字没有被使用

原文地址:https://www.cnblogs.com/641055499-mozai/p/12694513.html