rtckit/pcap-ffi
PHP通过FFI通过libpcap进行数据包捕获
0.6.5
2020-10-29 18:03 UTC
Requires
- php: >=7.4.0
- ext-ffi: *
Requires (Dev)
- phpstan/phpstan: ^0.12
- phpunit/phpunit: ^9.4
- vimeo/psalm: ^4.0
This package is auto-updated.
Last update: 2024-08-29 05:43:30 UTC
README
流驱动PHP数据包捕获库,通过FFI利用libpcap。
Pcap扩展
尽可能(或在使用较旧版本的PHP时),应使用本机pcap PHP扩展,此库作为其选择/边缘情况的替代品提供。否则,基于FFI的数据包捕获库与pcap
扩展完全兼容。因此,对扩展应用的所有更改都会反映在此处,库的版本将始终与其扩展对应版本相匹配。
需求
此库使用从PHP 7.4开始引入的功能,它不能与过时的版本一起使用。当然,必须安装并启用PHP FFI扩展。
目标环境上必须安装libpcap库;一些Linux发行版会干扰库命名协议,这可能会使FFI初始化过程混乱。如果是这种情况,可以将LIBPCAP_NAME
环境变量设置为实际库的名称,或者甚至设置为库的.so文件的绝对路径,用于自定义构建或非标准目录布局。
例如,对于Debian Buster,应将LIBPCAP_NAME
设置为libpcap.so.1.8.1
。
安装
安装此库的推荐方法是通过Composer。 Composer新手?
这将安装最新的支持版本
composer require rtckit/pcap-ffi:^0.6.5
测试
在运行测试套件之前,请确保用户有捕获网络数据包的能力(root或CAP_NET_RAW
)。
make test
许可证
MIT,请参阅LICENSE文件。
致谢
- libpcap由Tcpdump Group提供,BSD许可。
贡献
可以通过问题跟踪器提交错误报告(和小的补丁)。对于重大补丁,更喜欢通过仓库分支和提交拉取请求。