Linux中查看正在监听的IP和端口

最近和其他终端设备联调时,需要去查看正在监听的IP和端口,以下在 Linux 系统中,可以使用以下命令查看正在监听的端口和 IP 地址。这个取决于当前Linux系统内已有的工具,如果不清楚,可以都试一下。

netstat -tuln

  • -t:显示 TCP 协议相关的信息。
  • -u:显示 UDP 协议相关的信息。
  • -l:只显示监听中的端口。
  • -n:以数字形式显示地址和端口(不进行反向 DNS 解析)。

ss -tuln

  • 该命令的参数和 netstat 类似,用来显示监听的 TCP 和 UDP 端口。

lsof -i -P -n | grep LISTEN

  • -i:显示与网络相关的文件(端口)。
  • -P:直接显示端口号,不显示服务名称。
  • -n:直接显示 IP 地址,不进行 DNS 解析。
  • grep LISTEN:过滤出监听状态的行。

nmap -sT -O localhost

  • -sT 进行 TCP 连接扫描
  • -O 尝试识别操作系统
### 如何在 Linux查看设备 IP 地址端口 #### 查看设备 IP 地址的方法 为了获取 Linux 系统中的设备 IP 地址,可以使用 `ifconfig` 或者更现代的 `ip addr` 命令。以下是两种常用的方式: 1. **通过 `ifconfig` 命令** 如果系统安装了 `net-tools` 工具包,则可以直接运行以下命令来显示网络接口及其配置信息: ```bash ifconfig ``` 这会列出所有的网络接口以及它们的状态、IP 地址等信息。 2. **通过 `ip addr` 命令** 推荐使用更为现代化的工具 `ip` 来替代传统的 `ifconfig`。执行如下命令即可获得详细的网络接口信息: ```bash ip addr show ``` 输出的内容不仅包括 IPv4 IPv6 地址,还可能包含 MAC 地址其他参数[^3]。 --- #### 查看当前开放的端口 要了解哪些端口正在监听或者已经打开,可以通过以下几种方式实现: 1. **利用 `ss` 命令** `ss` 是一个功能强大的套接字统计工具,能够快速展示系统的网络连接情况。下面是一个常用的命令用于查看所有处于监听状态的 TCP/UDP 端口: ```bash ss -tuln ``` 参数解释: - `-t`: 显示 TCP 协议的信息; - `-u`: 显示 UDP 协议的信息; - `-l`: 仅显示监听中的 socket; - `-n`: 不解析主机名服务名称。 2. **借助 `netstat` 命令** 虽然逐渐被淘汰,但在某些环境中仍然可用。其基本语法如下所示: ```bash netstat -tuln ``` 3. **查询防火墙规则以确认允许访问的具体端口** 防火墙设置决定了外部流量能否到达指定的服务端口。如果启用了 `iptables`,则可通过下列指令审查现有的规则集并定位接受的数据流入口: ```bash sudo iptables -L INPUT -n --line-numbers | grep ACCEPT ``` 此外,也可以直接导出完整的表项列表进一步分析: ```bash sudo iptables-save ``` 综上所述,在实际操作过程中可以根据需求选用不同的组合形式完成任务目标[^2]。 --- #### 实际案例演示 假设需要验证一台服务器上的 HTTP (TCP 80) 是否正常工作,并且该机器拥有固定的内部网卡地址为 `192.168.204.129` 。那么首先应当确保本地存在对应服务进程绑定到此端点之上;其次检查是否有恰当的安全策略放行此类请求路径[^1]。 ```python import os def check_service_status(): result = os.system('ss -tuln | grep ":80"') return True if not result else False print(check_service_status()) ``` 上述脚本片段可用于初步判断是否存在针对特定协议及编号的有效实例部署状况。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值