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

как сделать хост в локальной сети для пересылки трафика между другими хостами в той же локальной сети в Linux

Я задаю следующую тестовую топологию:

Switch1-----Switch2-----Switch3
   |           |           |
   H1          H2          H3

Я хочу, чтобы трафик, идущий из H1 в H3, направлялся на H2 перед перенаправлением в H3. Для этого я установил правила потока на своих коммутаторах (OpenVSwitch). Однако, когда трафик идет на H2, он там пропадает.

Интересно, какие конфигурации я должен добавить в H2 (Ubuntu 14.04), чтобы H2 мог пересылать трафик, который ему не предназначен и не исходит от него.

Вы должны разрешить пересылку

echo 1 > /proc/sys/net/ipv4/ip_forward

Если вы хотите получить этот перманент, отредактируйте файл /etc/sysctl.conf

net.ipv4.ip_forward=1

Спасибо за ответы, я наконец смог сделать это, переписав Mac-адрес назначения пакетов в коммутаторе. проблема заключалась в том, что хост 2 отбрасывает пакеты, которые ему не предназначены (другой адрес назначения Mac). Таким образом, путем перезаписи Mac-адреса назначения на Mac-адрес хоста 2 в коммутаторе 2 и активации переадресации IP на хосте 2 трафик успешно перенаправляется. Таким образом, первый шаг - сообщить S2, чтобы он отправлял трафик на хост 2 с Mac назначения хоста 2., а шаг 2 - сказать S2 переписать Mac-адрес трафика, возвращаемого с хоста 2 на Mac-адрес хоста 3 (для восстановления исходный MAC-адрес).