ZetCode

PowerShell Get-NetUDPEndpoint

最后修改:2025 年 2 月 15 日

在本文中,我们将介绍 PowerShell 中的 Get-NetUDPEndpoint cmdlet。此 cmdlet 用于检索系统上 UDP 终结点的信息。

UDP 终结点基础知识

UDP 终结点表示使用 UDP 协议的网络连接。它包含本地和远程 IP 地址以及端口号。UDP 是一种无连接协议,用于轻量级通信。Get-NetUDPEndpoint cmdlet 有助于监视这些连接。

Get-NetUDPEndpoint 的基本用法

使用 Get-NetUDPEndpoint 的最简单方法是不带参数。这将列出系统上的所有 UDP 终结点。输出包括本地地址、端口和进程 ID。每个终结点都表示为一个 CimInstance 对象。

udp1.ps1
Get-NetUDPEndpoint

此命令检索所有 UDP 终结点。输出显示监听的端口和关联的进程。您可以看到本地地址和端口号。

按本地端口获取 UDP 终结点

您可以通过本地端口号过滤 UDP 终结点。使用 -LocalPort 参数后跟端口号。这对于检查特定服务很有用。只返回使用指定端口的终结点。

udp2.ps1
Get-NetUDPEndpoint -LocalPort 53

此命令返回使用端口 53 的 UDP 终结点,该端口通常用于 DNS。输出显示了进程 ID 和本地地址信息。

PS C:\> .\udp2.ps1

LocalAddress   LocalPort RemoteAddress RemotePort OwningProcess
------------   --------- ------------- ---------- -------------
0.0.0.0        53       0.0.0.0       0          1234
::             53       ::            0          1234

按进程 ID 获取 UDP 终结点

可以按其所属进程 ID 过滤终结点。使用 -OwningProcess 参数后跟 PID。这有助于识别特定进程的网络活动。每个进程可以有多个 UDP 终结点。

udp3.ps1
Get-NetUDPEndpoint -OwningProcess 1234

此命令返回进程 ID 为 1234 的所有 UDP 终结点。输出包括此进程使用的所有端口。

格式化 UDP 终结点输出

可以使用 Format-List 更改默认的表格式以获取详细信息。这将显示终结点对象的所有可用属性。您还可以使用 Select-Object 选择特定属性。

udp4.ps1
Get-NetUDPEndpoint -LocalPort 137 | Format-List *

此命令以列表格式显示端口 137 上 UDP 终结点所有属性。输出包括创建时间、服务名称和其他详细信息。

按状态过滤 UDP 终结点

您可以根据 UDP 终结点状态进行过滤。虽然 UDP 是无连接的,但可以过滤“Listen”等状态。Where-Object cmdlet 用于此目的。这有助于识别活动的监听端口。

udp5.ps1
Get-NetUDPEndpoint | Where-Object { $_.State -eq "Listen" }

此命令列出处于监听状态的 UDP 终结点。$_ 变量表示管道中的当前终结点。监听端口正在等待传入的数据报。

来源

PowerShell 文档

在本文中,我们已经介绍了 PowerShell 中的 Get-NetUDPEndpoint cmdlet。

作者

我叫 Jan Bodnar,我是一名热情的程序员,拥有丰富的编程经验。我自 2007 年以来一直在撰写编程文章。迄今为止,我已撰写了 1400 多篇文章和 8 本电子书。我在编程教学方面有十多年的经验。

列出 所有 PowerShell 教程