Linux命令--网络服务相关命令
网络服务相关
netstat
netstat 是一个很实用的 Linux 命令,通过它可以显示网络连接,路由表,接口状态,网络链路和组播成员组等信息。最常用的场景是拿来看本机的 TCP/UDP 网络连接,并以此判断本地网络服务的运行状态。
单独使用查看所有连接信息natstat
查看端口占用使用情况
1 | netstat -tulpn |
只显示 TCP 连接信息:
1 | netstat -t |
关于 State 状态字段的值列表如下:
状态名称 | 说明 |
---|---|
ESTABLISHED | 套接字有一个有效连接。 |
SYN_SENT | 套接字尝试建立一个连接。 |
SYN_RECV | 从网络上收到一个连接请求。 |
FIN_WAIT1 | 套接字已关闭,连接正在断开。 |
FIN_WAIT2 | 连接已关闭,套接字等待远程方中止。 |
TIME_WAIT | 在关闭之后,套接字等待处理仍然在网络中的分组 |
CLOSED | 套接字未用。 |
CLOSE_WAIT | 远程方已关闭,等待套接字关闭。 |
LAST_ACK | 远程方中止,套接字已关闭。等待确认。 |
LISTEN | 套接字监听进来的连接。如果不设置 –listening 或者 –all 选项,将不显示出来这些连接。 |
CLOSING | 套接字都已关闭,而还未把所有数据发出。 |
UNKNOWN | 套接字状态未知。 |
telnet
telnet表示开启终端机阶段作业,并登入远端主机。telnet是一个Linux命令,同时也是一个协议(远程登陆协议)。
命令格式: telnet[参数][主机]
1 | -8 允许使用8位字符资料,包括输入与输出。 |
ss
ss 命令是 netstat 的替代品,提供了更多的网络连接信息,特别是网络状态和性能统计信息。
查看所有连接:
1 | ss -a |
查看监听端口:
1 | ss -l |
显示所有 TCP 连接:
1 | ss -t |
显示所有 UDP 连接:
1 | ss -u |
lsof
lsof 命令用于列出打开的文件,可以结合网络选项来显示网络连接信息。
显示网络连接信息:
1 | lsof -i |
显示特定端口的使用情况:
1 | lsof -i :80 |
ip
ip 命令用于显示和操作路由、设备、策略路由和隧道等。
显示网络设备状态:
1 | ip link show |
显示 IP 地址:
1 | ip addr show |
显示路由表:
1 | ip route show |