Как получить следующий хаб - PullRequest
0 голосов
/ 05 апреля 2009

Я хочу написать программу на Java, в которой, если я дам IP-адрес назначения, я получу информацию о следующем концентраторе для достижения этого IP-адреса.

Так как мне этого добиться?


Спасибо

Бапи

Ответы [ 3 ]

2 голосов
/ 05 апреля 2009

Я думаю, что вы имеете в виду следующий прыжок вместо "концентратор".

Для хоста следующий хост может быть проверен из таблицы маршрутов хоста, с помощью traceroute он может быть реализован в виде следующего потока stackoverflow:

Как я могу определить IP моего маршрутизатора / шлюза в Java?

2 голосов
/ 05 апреля 2009

Java программа ??? У вас есть tracert ...

Кроме того, вы должны объяснить, что именно вы подразумеваете под "концентратором".

1 голос
/ 05 апреля 2009

Наиболее распространенный метод обнаружения топологии в IP-сетях - это отправка пакетов (например, ICPM ECHO REQUEST) на адреса назначения с очень маленькими значениями TTL . Обычно последний действительный узел, к которому вы обращаетесь с данной DLL, затем отправляет сообщение об ошибке ICMP, сообщающее, что пакет был потерян из-за истечения срока его службы, и, таким образом, раскрывающий IP-адрес указанного устройства.

Ответ на этот вопрос предполагает, что Java Socket API может устанавливать TTL только для многоадресных сокетов. Чтобы обойти это, вы можете попробовать работать с необработанными IP-сокетами, используя стороннюю библиотеку, такую ​​как RockSaw , поскольку в JDK нет поддержки необработанных IP-адресов (ошибка в трекере SUN с 2002 года (!) с просьбой закрыть его "Не исправлю").

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...