да, есть ..
1) Вы должны измерять расстояние в прыжках на маршрутизаторах. Так, например, человек в вашей подсети находится на расстоянии одного прыжка, а человек на вашем isp - на расстоянии 2 прыжка ..
если вы работаете в Windows, вы можете измерять прыжки по строкам, созданным приложением traceroute (через cmd в win + R) в unix, вы можете запустить приложение tracert
2) Если ваш геоип может дать вам приблизительное географическое местоположение, вы можете измерить расстояние между двумя местоположениями GPS. Это, однако, не будет очень надежным, поскольку они не могут знать точное местоположение. Но это может помочь, если IP-адреса более 3-х прыжков.
Хмель в программе traceroute - это измерение свойства TTL в протоколе IGMP. Если TTL (время жизни) превышает некоторую точку, маршрутизатор отправляет ответ, что пункт назначения не был достигнут. Таким образом, вы сначала пытаетесь с TTL = 1, затем с TTL = 2, затем с TTL = 3 и т. Д. Если вы не хотите снова программировать программу tracert, просто используйте функцию выполнения командной строки на вашем любимом языке программирования:)
Обратите внимание, что это не является надежным при измерении расстояния между IP-адресами, так как если у вашего соседа другой провайдер, чем у вас, расстояние до соседа после него будет меньше, чем до него.
3) Чтобы измерить расстояние до ближайших сетей, вы можете определить мощность сетей Wi-Fi. если вы знаете, к какой сети принадлежит wifi, вы можете знать расстояние.
Обратите внимание, что если вы уже знаете IP-адреса своих соседей, вы, вероятно, знаете также, насколько они далеко:)
Если вы просто сканируете сеть в кампусе колледжа или что-то в этом роде, вы можете обнаружить более полезную информацию о компьютерах с помощью nmap, но использовать ее на свой страх и риск, так как вас могут исключить, или вы можете получить некоторые санкции от вашего провайдера .