附录A 源语法规范
本附录描述了pcap_open和pcap_findalldevs_ex函数所使用的捕获源类型字符串的格式。该字符串用来决定所使用捕获源的类型(文件、远程主机接口还是本地主机接口),并包含了打开捕获源所需的全部信息。
定义
下面是源类型字符串的定义:
下面的字符串指明用户想打开的捕获源是一个本地文件。在remote-ext.h文件第164行定义。
defne PCAP_SRC_FILE_STRING fle://
下面的字符串指明用户想打开的捕获源是一个网络接口,该字符串不需要包含RPCAP协议的使用。如果该接口是在本地主机上,则不使用RPCAP协议。在remote-ext.h文件第177行定义。
defne PCAP_SRC_IF_STRING"rpcap://"
详细描述
pcap_open函数允许使用的格式如下所示:
❑file://path_and_filename(打开一个本地文件)
❑rpcap://devicename(打开本地主机上所选择的一个可用设备,并且不使用RPCAP协议)
❑rpcap://host/devicename(打开一个远程主机上所选择的一个可用设备)
❑rpcap://host:port/devicename(打开一个远程主机上所选择的一个可用设备,使用RPCAP协议但使用一个非标准端口)
❑adaptername(打开一个本地主机适配器,目的是为了兼容性,但建议不使用该方式)
❑(NULL)(打开第一个本地主机适配器,目的是为了兼容性,但建议不使用该方式)
函数pcap_findalldevs_ex允许使用的格式如下所示:
❑file://folder/(列出给定文件目录下的所有文件)
❑rpcap://(列出所有本地适配器)
❑rpcap://host:port/(列出一个远程主机上可用的适配器)
host与port参数,可以为数字,也可为文字。自从IPv6被完全支持后,下列各种格式都是允许的:
❑host:文字的(例如host.foo.bar)
❑host:数字的IPv4(例如10.11.12.13)
❑host:数字的IPv4,IPv6方式(例如10.11.12.13)
❑host:数字的IPv6(例如1:2:3::4)
❑port:既可为数字的(例如80)也可为文字的(例如http)
下面是一些使用实例:
❑rpcap://host.foo.bar/devicename(都是文字的,没端口号)
❑rpcap://host.foo.bar:1234/devicename(都是文字的,带端口号)
❑rpcap://10.11.12.13/devicename(IPv4数字的,没端口号)
❑rpcap://10.11.12.13:1234/devicename(IPv4数字的,带端口号)
❑rpcap://[10.11.12.13]:1234/devicename(IPv4数字的带IPv6格式,带端口号)
❑rpcap://[1:2:3::4]/devicename(IPv6数字的,没端口号)
❑rpcap://[1:2:3::4]:1234/devicename(IPv6数字的,带端口号)
❑rpcap://[1:2:3::4]:http/devicename(IPv6数字的,带文字的端口号)