Назад | Перейти на главную страницу

Добавить фальшивый хмель в tracert?

Клиент хочет добавить ложный переход, когда кто-то выполняет трассировку по его IP-адресу. У него два ip-адреса и один интерфейс (без проблем, виртуальные интерфейсы решают). Как мне продолжить? Это вообще возможно? Я пробовал пересылку iptables, но тогда она не отображается в трассировке. Но я не пробовал другие методы (может быть, какой-то мост?)

Вот текущий маршрут, показанный в tracert: Человек, выполняющий traceroute -> 1.1.1.2

Вот запланированный результат traceroute: Человек, выполняющий traceroute -> 1.1.1.1 (ложный переход) -> 1.1.1.2

Обновить: Добавлено некоторое форматирование, чтобы уточнить, что это не проблема xy. Я абсолютно открыт для любого решения, а не только для iptables (будь то правильный или грязный взлом)

Изменить: только на одном хосте (Linux). Я тоже хочу это сделать. Это не должно быть ничего необычного. 1.1.1.1 просто нужно появиться на трассировке.

Моя попытка - не обязательно правильный подход

Обновление: я попытался отскочить от пакета с 1.1.1.2 на 1.1.1.1, затем изменить его, чтобы уменьшить TTL, а затем переслать его на 1.1.1.2 (Postrouting -j SNAT --to 1.1.1.1).

Изменить: вот правила, которые я пробовал, конфиденциальная информация удалена:

# Generated by iptables-save v1.4.21 on Mon May 18 15:13:18 2015
*nat
:PREROUTING ACCEPT [8:760]
:INPUT ACCEPT [8:760]
:OUTPUT ACCEPT [1:104]
:POSTROUTING ACCEPT [1:104]
-A POSTROUTING -p icmp -m icmp --icmp-type 8 -j SNAT --to-source 1.1.1.1
COMMIT
# Completed on Mon May 18 15:13:18 2015
# Generated by iptables-save v1.4.21 on Mon May 18 15:13:18 2015
*mangle
:PREROUTING ACCEPT [763:151106]
:INPUT ACCEPT [763:151106]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [299:39396]
:POSTROUTING ACCEPT [299:39396]
-A FORWARD -i eth0 -o eth0:0 -p icmp -m icmp --icmp-type 8 -j TTL --ttl-dec 1
COMMIT
# Completed on Mon May 18 15:13:18 2015
# Generated by iptables-save v1.4.21 on Mon May 18 15:13:18 2015
*filter
:INPUT ACCEPT [839:179066]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [303:40704]
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -p udp -m udp --dport 33434:33523 -j ACCEPT
-A FORWARD -d 1.1.1.1/32 -o eth0 -p icmp -m icmp --icmp-type 8 -j ACCEPT
COMMIT
# Completed on Mon May 18 15:13:18 2015

Хорошо, единственный способ, который я могу придумать, - это сделать это на хосте, инициирующем запрос. Вы можете добавить туда дополнительный интерфейс, связать его с адаптером и добавить маршруты, чтобы он проходил через этот интерфейс. Основная причина этого в том, что, когда коммутатор обнаруживает MAC-адрес, привязанный к IP 1.1.1.2, ваша трассировка будет завершена.

Если вы не хотите менять хост запрашивающей стороны для этого, вам нужно будет внести изменения в сеть, например изменить маршрутизатор, имитирующий дополнительный переход.

Теоретически следующее должно работать и достигать того, что вы ищете.

  • создать новый виртуальный интерфейс на рассматриваемом сервере и назначить ему IP-адрес, http://linuxconfig.org/configuring-virtual-network-interfaces-in-linux
  • установить исходный IP-адрес / интерфейс так, чтобы он указывал на новый виртуальный интерфейс, который был создан в предыдущем наборе, путем изменения таблицы маршрутизации (фактически, он становится новым маршрутизатором / шлюзом между источником и целью), http://linux-ip.net/html/basic-changing.html