Переписать IP-адрес назначения трафика TEEed

На сервере 1 и сервере 2 (Centos 7) размещено одно и то же приложение, которое прослушивает UDP-порт 1514. Сервер 1 получает трафик через этот порт. Цель состоит в том, чтобы приложение на Сервере 2 получило копию этого трафика.

Сервер 1 использует iptables для дублирования трафика по UDP 1514 и отправки его на Сервер 2:

iptables -t mangle -A PREROUTING -i ens160 -p udp --dport 1514 -j TEE --gateway 10.88.72.40 [сервер 2]

Tcpdump на сервере 2 показывает весь входящий трафик; ОДНАКО, IP-адрес назначения по-прежнему 10.88.72.41, поэтому прослушивающее приложение не обнаруживает трафик. Пожалуйста, помогите мне найти решение, чтобы приложение на втором сервере могло обнаружить этот трафик. На сервере 2 я пробовал эту политику переписать IP-адрес назначения входящих пакетов:

iptables -t nat -A PREROUTING -p udp -d 10.88.72.41 --dport 1514 -j NETMAP --10.88.72.40

На сервере 1 я пробовал аналогичные команды переписать (или DNAT) IP-адрес назначения исходящих пакетов. Я работал над этим в течение нескольких дней - если вы можете решить это, я буду вечно благодарен!

1 ответ

Решение

Вы, сир, ученый, джентльмен и святой! На моем втором сервере я добавил виртуальное шлейфовое устройство с IP-адресом первого сервера, и ЭТО ЖИВ! Вот как добавить виртуальное шлейфовое устройство в Centos 7:

cd /etc/sysconfig/network-scripts
cp ifcfg-lo ifcgf-lo:1
vi ifcfg-lo:1

и поместите в этот файл:

DEVICE=lo:1
IPADDR=10.88.72.41
NETMASK=255.255.255.255
NETWORK=10.88.72.41
BROADCAST=10.88.72.41
ONBOOT=yes
NAME=loopback:1
NM_CONTROLLED="no"

затем сделайте:

ifup lo:1
ifconfig  # you should see lo:1 in there

На сервере 1 добавьте статическую запись arp для сервера 2:

arp -s <server2 IP> <server 2 MAC>

И если вам нужно сделать то же самое на хосте Windows, вы можете следовать инструкциям, приведенным в этом посте: https://www.pingzic.net/how-to-enable-loopback-adapter-in-windows-10/

Которые по сути:

  1. Открыть диспетчер устройств
  2. Нажмите на категорию в левой части навигации DevMgmt, затем выберите меню "Действие" и выберите "Добавить устаревшее оборудование".
  3. Выберите "Установить оборудование, которое я выбираю вручную из списка (Дополнительно)", затем нажмите "Далее".
  4. Выберите "Сетевые адаптеры" и нажмите "Далее".
  5. Выберите "Microsoft" в левом списке (Производитель), затем выберите Microsoft KM-TEST Loopback Adapter в правом списке, затем нажмите "Далее", пока не закончите.

После того, как вы добавили адаптер, вы можете выбрать адаптер в обычной панели управления сетевого адаптера и применить статический IP-адрес по вашему выбору, чтобы сделать IP-адрес активным, активным IP-адресом на сервере, но фактически не реагировать на трафик с этого IP-адреса. живая сеть за пределами этого сервера.

Другие вопросы по тегам