English 中文(简体)
Network Packet Inspector in Mac OSX
原标题:

I m trying to create a network packet inspector.

I know you can do this with libpcap, but it s not a sniffer, i need to forge network packet, before it was sent on network. (sending via socks server)

I found 2 ways to do this :

  • Using an NKE. (Network Kernel Extension)
  • Using a DYLD_INSERT_LIBRARIES to insert a library to hook network function.

Which method do you think is the best ?

最佳回答

Neither, use a tun/tap device: http://tuntaposx.sourceforge.net/

You ll need to route the traffic to that device, modify it, then send it back. You can do this with firewall rules. There are lots of examples of using tun/tap all over the open-source world, it isn t hard.

Advantage: it s a kernel extension, but a standard kernel extension, and therefore you don t need to worry about debugging it.

问题回答

暂无回答




相关问题
C# Networking API s [closed]

Lately I ve been looking for a good networking API i could possibly use and/or reference some of the code within, but i have mere luck searching for some on Google/Bing. Hopefully somebody here has ...

Listen to a port that is in use [duplicate]

Possible Duplicate: Get connecting IP from specified ports that using by other program. If a port is used by a program, is there any way I can listen that port and get the connected IP on that ...

Twisted Spread suitable for multiplayer racing sim?

Do you think that Twisted Spread may be suitable (in terms of performance) for a multiplayer racing simulator? The rest of the application is based on Python-Ogre. Can Perspective Broker run upon (...

Optimizing a LAN server for a game

I m the network programmer on a school game project. We want to have up to 16 players at once on a LAN. I am using the Server-Client model and am creating a new thread per client that joins. ...

multicast ip address - blocked in call to recvfrom

i am writing a simple multicast application. i intend to run it on localhost. i have done the following: char *maddr; . . . sendfd = socket(...); struct sockaddr_in sasend; sasend.sin_family = ...

Java HTTPAUTH

我试图把桌面应用程序连接起来,我是同D.icio.us api @ Delicious Alan书写的,简单地向他们提供我的用户名和密码,并请他把书记上写给我......。

热门标签