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

Прослушивание через туннель GRE

В настоящее время я хочу узнать об использовании туннелей GRE, и у меня есть следующая схема:

Сервер1 (200.1.2.3) ----> Сервер2 (190.1.2.3)

Оба сервера имеют публичные IP-адреса.

Затем я настроил туннель GRE с помощью следующих команд, которые нашел в Интернете.

На Server1:

iptunnel add tunX mode gre remote 190.1.2.3  local 200.1.2.3 ttl 225
ifconfig tunX 10.0.201.1/24
ifconfig tunX up
ifconfig tunX pointopoint 10.0.201.2
ifconfig tunX multicast

На Server2:

iptunnel add tunY mode gre remote 200.1.2.3  local 190.1.2.3 ttl 225
ifconfig tunY 10.0.201.2/24
ifconfig tunY up
ifconfig tunY pointopoint 10.0.201.1
ifconfig tunY multicast

тогда я могу пинговать каждую машину, используя их локальные адреса (10.0.201.1 для Server1 и 10.0.201.2 для Server 2).

Теперь я хочу, чтобы программа, запущенная на сервере Server1, прослушивала порт 5050 (tcp, udp) и могла получить доступ к этому порту извне, подключившись к 190.1.2.3:5050.

Server1 также должен иметь возможность прослушивать порты через общедоступный IP-адрес (200.1.2.3) (не тот, который я хочу туннелировать через GRE)

Я пробовал применять некоторые правила iptables в Server2 для пересылки трафика, но они, похоже, не работают, поэтому я думаю, что мне не хватает чего-то важного в этой настройке, чтобы заставить ее работать.

Клиенты из Интернета должны иметь возможность подключиться к 190.1.2.3:5050 для доступа к службе на Server1, но они никогда не должны знать общедоступный IP-адрес Server1.

Схема быстрой раскраски будет такой:

Спасибо