Что я пытаюсь достичь:
Тестирование / настройка всех сценариев NAT (полный конус, ограничение порта и т. Д.) С помощью (1) .using iptables (2) интерфейс Ethernet (3)) интерфейс обратной связи (с использованием только одного компьютера)
Настройка следующей конфигурации:
Я запускаю одну виртуальную машину в Linux BOX и выполнил следующую конфигурацию:
Linux BOX IPэто: 192.168.0.4
Linux Box Виртуальный ящик IP-адрес шлюза: 192.168.56.1
Запуск Stun Server Binded на: 192.168.56.1
(Основной) и 192.168.0.4
(Дополнительный) в Linux Box
Запуск Stun Client на виртуальной машине (работает на Linux Server выше) на 127.0.0.1:2000
и настроенные правила iptables для пересылки трафика интерфейса обратной связи на интерфейс Ethernet (192.168.56.102
) и наоборот.
Ожидаемый результат
Я должен иметь возможность настроить каждое моделирование NAT через интерфейс iptables / ethernet / loopback, на котором сервер STUN работает на хосте, а клиент Stun работает на виртуальной машине, и он должен сообщить тип NAT
Фактический результат
iptables ничего не делает с входящими / исходящими пакетами в петлевой интерфейсный сокет sendto вызов завершается с ошибкой: «ошибка 22 недопустимое аргументация», поскольку сокет имеет связь с 127.0.0.1:2000
и адрес получателя: 192.168.56.1
См. ниже вкратце
[Loopback-Interface(127.0.0.1 :2000 / *Running STUN Client*/ VM) -->[*IPTABLES RULES TO/FROM*] <-- Ethernet-Interface(VM -- 192.168.56.102:2000) ==>|| ==> HOST(Gateway - 192.168.56.1:3478 - *Running STUN Server*)] ::
Примеры правил ::
sudo iptables -t nat -A POSTROUTING -o eth0 -p udp --source 127.0.0.1 --sport 2000 -j SNAT --to-source 192.168.56.102
sudo iptables -t nat -A POSTROUTING -o eth0 -p tcp --source 127.0.0.1 --sport 2001 -j SNAT --to-source 192.168.56.102
sudo iptables -t nat -A PREROUTING -i eth0 -p udp --destination 192.168.56.102 --dport 2000 -j DNAT --to-destination 127.0.0.1
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --destination 192.168.56.102 --dport 2000 -j DNAT --to-destination 127.0.0.1
Кажется, iptables не выбираетпакеты от петлевого интерфейса
Ссылки: http://www.linuxquestions.org/questions/linux-networking-3/iptables-redirect-127-0-0-1-to-192-168-1-113-a-818817/
Пожалуйста, дайте мне знать, если какой-либо орган может помочь в этом.