Рейтинг:1

Проблема привязки IP при использовании туннеля GRE

флаг co

У меня проблема с туннелированием, и мне трудно найти решение. У меня есть два сервера: A: Host-Server — это сервер с одним IP-адресом, а B: Main-Server — это сервер, обрабатывающий все наши приложения.

Я настроил туннель GRE в порядке, но для приложения требуется, чтобы (A) IP-адрес сервера ( 192.168.0.1 ) находился на (B) серверах Eth0, чтобы приложение могло использовать IP-адрес как свой собственный (это обязательно). Однако, когда я пытаюсь добавить IP-адрес (A) к (B), я считаю, что происходит петля маршрутизации, и я не могу понять, как правильно настроить поток трафика. Я пробовал несколько PREROUTE и POSTROUTE на iptabels без особого успеха. Ниже приведены настройки, которые я получаю, когда все перестает работать.

Любая помощь в этом будет принята с благодарностью!

Подробности:

Сервер А: Хост:

Публичный IP-адрес: 192.168.0.1
IP-адрес туннеля: 10.0.2.1

Сервер Б: Основной:

Публичный IP-адрес: 192.168.1.2
IP-адрес туннеля: 10.0.2.2

Сервер А:

Добавьте туннель

sudo ip-туннель добавить режим test_tunnel gre локальный 192.168.0.1 удаленный 192.168.1.2 ttl 255
sudo ip addr add 10.0.2.1/30 dev test_tunnel
sudo ip link set test_tunnel up
sudo echo '101 test_tunnel_GRE' >> /etc/iproute2/rt_tables
/sbin/ip маршрут добавить по умолчанию через таблицу 10.0.2.2 dev test_tunnel test_tunnel_GRE
/sbin/iptables -t nat -A РАЗМЕЩЕНИЕ -s 10.0.2.0/30 ! -o gre+ -j SNAT --к источнику 192.168.0.1
/sbin/iptables -A FORWARD -d 10.0.2.2 -m state --state НОВЫЙ,УСТАНОВЛЕННЫЙ,СВЯЗАННЫЙ -j ПРИНЯТЬ
/sbin/iptables -A FORWARD -s 10.0.2.2 -m state --state НОВЫЙ,УСТАНОВЛЕННЫЙ,СВЯЗАННЫЙ -j ПРИНЯТЬ

Проверьте IP-адреса туннеля для проверки связи и посмотрите, получен ли ответ (работает).

root@A:~# ping -c4 10.0.2.2
PING 10.0.2.2 (10.0.2.2) 56 (84) байт данных.
64 байта из 10.0.2.2: icmp_seq=1 ttl=64 время=50,6 мс
64 байта из 10.0.2.2: icmp_seq=2 ttl=64 время=49,6 мс
64 байта из 10.0.2.2: icmp_seq=3 ttl=64 время=49,7 мс
64 байта из 10.0.2.2: icmp_seq=4 ttl=64 время=49,7 мс

--- 10.0.2.2 статистика пинга ---
4 пакета передано, 4 получено, 0% потери пакетов, время 3005 мс
rtt min/avg/max/mdev = 49,636/49,945/50,651/0,439 мс

Тест на сервере должен увидеть IP-адрес туннельного сервера: (работает)

root@A:~# curl http://www.cpanel.net/showip.cgi --interface 10.0.2.1
192.168.0.1

Сервер Б:

Добавьте туннель

sudo ip-туннель добавить режим test_tunnel gre локальный 192.168.1.2 удаленный 192.168.0.1 ttl 255
sudo ip addr add 10.0.2.2/30 dev test_tunnel
sudo ip link set test_tunnel вверх
sudo echo '101 test_tunnel_GRE' >> /etc/iproute2/rt_tables
/sbin/ip добавить правило из таблицы 10.0.2.0/30 test_tunnel_GRE
/sbin/ip маршрут добавить по умолчанию через таблицу 10.0.2.1 dev test_tunnel test_tunnel_GRE

Проверьте IP-адреса туннеля для проверки связи и посмотрите, получен ли ответ (работает).

[root@B~]# пинг -c4 10.0.2.1
PING 10.0.2.1 (10.0.2.1) 56 (84) байт данных.
64 байта из 10.0.2.1: icmp_seq=1 ttl=64 время=51,7 мс
64 байта из 10.0.2.1: icmp_seq=2 ttl=64 время=50,0 мс
64 байта из 10.0.2.1: icmp_seq=3 ttl=64 время=50,0 мс
64 байта из 10.0.2.1: icmp_seq=4 ttl=64 время=50,0 мс

--- 10.0.2.1 статистика пинга ---
4 пакета передано, 4 получено, 0% потери пакетов, время 3054 мс
rtt min/avg/max/mdev = 50,023/50,458/51,721/0,746 мс

Тест на сервере должен увидеть IP-адрес туннельного сервера: (работает)

[root@B~]# curl http://www.cpanel.net/showip.cgi --interface 10.0.2.2
192.168.0.1

Вот где он ломается:

Добавьте IP в eth0:

IP-адрес 192.168.0.1/32 dev eth0
/sbin/ip добавить правило из таблицы 192.168.0.1 test_tunnel_GRE

СЛОМАННЫЙ

Теперь все ломается на обоих концах, на обоих серверах ping и curl оба не отвечают.

Я ценю любую информацию, которая может помочь мне решить эту проблему!

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.