![如何获取 Wireshark 知道的端口列表?](https://linux22.com/image/628850/%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96%20Wireshark%20%E7%9F%A5%E9%81%93%E7%9A%84%E7%AB%AF%E5%8F%A3%E5%88%97%E8%A1%A8%EF%BC%9F.png)
当我需要选择要使用的新端口(组织内部)时,我过去常常查看 /etc/services。这已不再足够,因为 Wireshark 知道很多不在 /etc/services 中的其他端口,因此会错误标记流量。
我想要获取 Wireshark 知道的所有(TCP 和 UDP)端口的列表,以便我可以使用其他端口。
我在哪里可以找到(或者如何生成)此列表?
更新,写了一个脚本:
#!/usr/bin/env python
import urllib2
response = urllib2.urlopen('http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.txt')
text = response.read()
for line in text.splitlines():
words = line.split()
if len(words) < 2: continue
if words[1] != 'Unassigned': continue
print words[0]
答案1
services
Wireshark 安装中有一个名为的文件。它是http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.txt
答案2
您可以阅读源代码,这是我首先要查看的地方:
https://code.wireshark.org/review/gitweb?p=wireshark.git;a=blob_plain;f=services;hb=HEAD