2008-09-21 3 views
0

Если бы я должен был создать правило переадресации ipfw для пересылки всего FTP-трафика в конкретный сокет, можно ли использовать Java для подключения к socekt и чтения информации о пакете? Если да, то как я буду читать/писать в scoket?Прочитайте разъемы divert в java?

ответ

0

не уверен, что вы имеете в виду. Если вы используете правило переадресации, все, что вам нужно сделать, это прослушать эту комбинацию ip: port в вашем приложении java, и все будет готово. Если вы хотите прочитать фактическую информацию конечной точки назначения, для этого вам нужно использовать JNI.

+0

Это неправда. [Когда вы создаете сокет, вам действительно нужно указать его порт переадресации] (http://www.unix.com/man-page/FreeBSD/4/divert/). – thatha 2012-10-26 01:59:39

0

Да, это как обычный сокет, вы можете читать/писать с него, но в Mac OS X, если вы хотите изменить пакет и вставить его обратно, вам нужно сначала пересчитать сумму проверки tcp ,

http://blog.loudhush.ro/2006/08/using-divert-sockets-on-mac-os-x.html

Это хороший пост, который вводится основное использованием отбракованного гнезда на Mac OS X. Вы можете фактически создать правило в коде C.

Для вашего случая просто сканируйте пакет для заголовка TCP или IP и проанализируйте все, что вы хотите

Смежные вопросы