Last active
August 27, 2018 09:29
-
-
Save snail007/49530dccba8419635674fe0dd12363cd to your computer and use it in GitHub Desktop.
gopackets 编译运行环境要求
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1.linux 需要libpcap库 | |
sudo apt-get install libpcap0.8-dev | |
2.windows 64位系统需要 | |
go_amd64 | |
使用winpcap无法抓取127.0.0.1通讯的流量,如果要抓取127.0.0.1的流量需要Npcap | |
Npcap 是对当前最流行的 WinPcap 工具包进行改进的一个项目,兼容winpcap api. | |
安装x86_64-w64-mingw32-8.1.0-crt-5.0.4.7z | |
解压到:C:\MinGW,把C:\MinGW\bin加入PATH环境变量. | |
安装gcc | |
去http://tdm-gcc.tdragon.net/download下载gcc,安装到C:\TDM-GCC-64, | |
把C:\TDM-GCC-64\bin和C:\TDM-GCC-64\x86_64-w64-mingw32\bin加入PATH环境变量. | |
安装winpcap develop package | |
去 https://www.winpcap.org/devel.htm下载开发包4.1.2 ,解压WpdPack_4_1_2.zip到 C:\WpdPack,一定要这个目录,否则得修改go库里面的代码 | |
安装Npcap | |
https://nmap.org/npcap/#download | |
如果安装了WinPcap, 安装Npcap前请先卸载WinPcap,重启系统之后再安装Npcap. | |
安装时要勾选 | |
Use DLT_NULL protocol sa Loopback ...和 | |
install npcap in winpcap api-compat mode(选这个,是要兼容 WinPcap) | |
修复WpdPack缺失文件 | |
复制: | |
c:\windows\system32\Packet.lib 和 c:\windows\system32\wpcap.lib 到 c:\temp | |
然后命令行进入c:\temp | |
执行: | |
gendef wpcap.dll | |
gendef packet.dll | |
dlltool --as-flags=--64 -m i386:x86-64 -k --output-lib libwpcap.a --input-def wpcap.def | |
dlltool --as-flags=--64 -m i386:x86-64 -k --output-lib libpacket.a --input-def packet.def | |
然后复制生成的 libwpcap.a 和 libpacket.a 到 c:\WpdPack\Lib\x64. | |
提示: | |
如果把编译好的exe在目标机器运行,目标机器只需要安装Npcap即可. | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
增加编译好的文件
![libpacket a](https://user-images.githubusercontent.com/4533203/44652454-7dbbca80-aa1e-11e8-86fb-8e4bb200e3f0.png)
![libwpcap a](https://user-images.githubusercontent.com/4533203/44652456-7dbbca80-aa1e-11e8-8237-65f0bdedc26f.png)
libwpcap.a 和 libpacket.a
由于gist只能上传图片,保存上面的png图片链接文件为 libpacket.a 和 libwpcap.a 即可.