我怎样才能发送tcpdump输出到数据库?
我有一个访问点运行openWRT v12.09与tcpdump安装。 在服务器上,我有node.js与couchdb运行。 我想将tcpdump的输出写入到couchdb中。 这是我在黑暗中的一个地方。 我无法弄清楚如何使openWRT / tcpdump与node.js / couchdb之间的连接。
我读pipe道的方式是让一方读取数据,另一方存储数据。 这将是目标,因为接入点的存储容量是有限的。 我想将tcpdump的输出转换成JSON,这可能吗? 所以很容易读取和存储在数据库中。
我读了一下,openVPN,pipe道,nodecat,并尝试了一堆东西,但我需要一些援助,谢谢。
为什么不使用简单的HTTP协议? 这正是它发明的原因 – 移动networking资源。
在接入点上安装轻量级的HTTP服务器,如果您还没有。 例如, boa是非常轻量级的单任务HTTP服务器,对于这个目的来说可能已经足够了。
然后,只是:
- 让tcpdump将文件存储在接入点的服务器目录树中
- 在服务器上使用node.js的HTTP模块下载文件
- 将其存储在数据库中。
而已。 没有必要也不是一个好主意,将您的二进制数据转换成JSON!