The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  правила/FAQ  поиск  регистрация  вход/выход  слежка  RSS
"Проблема с OSPF+iptables"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Маршрутизация, NAT)
Изначальное сообщение [ Отслеживать ]

"Проблема с OSPF+iptables"  +/
Сообщение от Elait email(ok) on 29-Мрт-17, 18:06 
Добрый день! Начальством поставлена задача о замене помирающего сервера на новый. За просрок по задаче уже должен 29 литров пива. ;D Все настроенно, но есть одна проблема с OSPF и nat-правилами, а именно:
Есть роутер с ОС Ubuntu Server 16.04. На нем 2 интерфейса-один в Интернет с адресом 188.94.xx.xx, второй для локальной сети с адресом 192.168.0.22. В сети есть еще 2 сервера-роутера с OSPF с локальными адресами 192.168.0.21 и 192.168.0.27. При запуске скрипта с nat-правилами на сервере 192.168.0.22  не работает OSPF. В логах пишет следующее:
2017/03/29 16:36:32 OSPF: Link State Update: Neighbor[192.168.0.27] state Init is less than Exchange
2017/03/29 16:36:32 OSPF: Link State Update: Neighbor[192.168.0.21] state Init is less than Exchange
2017/03/29 16:37:02 OSPF: Link State Acknowledgment: Neighbor[192.168.0.27] state Init is less than Exchange
2017/03/29 16:37:02 OSPF: Link State Acknowledgment: Neighbor[192.168.0.21] state Init is less than Exchange

Конфиг OSPF:
hostname pl-route
password quagga
enable password quagga
router ospf
ospf router-id 192.168.0.22
network 192.168.0.0/24 area 0
interface eth0
log file /var/log/quagga/ospfd.log

Конфиг Zebra:
hostname pl-route
password quagga
enable password quagga
log file /var/log/quagga/zebra.log
interface eth0

Скрипт с nat-правилами:
iptables -t nat -A POSTROUTING -s 0/0 -d 192.168.0.0/24 -j RETURN
iptables -t nat -A PREROUTING -s 0/0 -d 188.94.xx.xx -j NETMAP --to 192.168.0.0/24
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0/0 -j SNAT --to-source 188.94.xx.xx

Если скрипт с nat убрать при загрузке ОС, то OSPF начинает работать корректно.
Как заставить OSPF работать с nat-правилами???

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Проблема с OSPF+iptables"  –1 +/
Сообщение от ACCA (ok) on 29-Мрт-17, 21:56 
> Как заставить OSPF работать с nat-правилами???

Есть мнение, что не нужно его заставлять работать с nat-правилами. Крайне сомнительно, что ты сам не знаешь, какие сети сидят за 192.168.0.21 и 192.168.0.27 и тебе нужен OSPF, чтобы это выяснять.

1. Выбрасываешь quagga вместе с OSPF
2. Заменяешь NETMAP на MASQUERADE
3. На главном "сервере-роутере" пишешь статические маршруты к сетям за 192.168.0.21 и 192.168.0.27

OSPF со своими 40 секундами не годится, чтобы быстренько переключаться на резервный канал. А вот два маршрута с разными весами + ICMP type 3 code 0 сработают практически мгновенно.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Проблема с OSPF+iptables"  +/
Сообщение от Elait email(ok) on 30-Мрт-17, 11:50 
Схему немного размыто написал.
Уточняю:
В сети есть 3 сервера: 2 "сервера-роутера" с пулом внешних адресов(188.94.xx.xx и 92.48.xx.xx) и локальными(192.168.0.21 и 192.168.0.4) и 1 корневой сервер-маршрутизатор(192.168.0.27). За ними не один десяток локальных сетей. Сервера 192.168.0.4 и 192.168.0.21 выводят все эти сети в Интернет. Поэтому nat обязателен.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

2. "Проблема с OSPF+iptables"  +1 +/
Сообщение от gfh1gfh1 (ok) on 30-Мрт-17, 08:33 
Малость непонятна схема подключения и где именно и между чем не работает OSPF. Если что, то OSPF по умолчанию работает на мальтикастах (224.0.0.5 и 224.0.0.6 вроде). Думаю стоит посмотреть трафик что у вас ходит и добавить правил в iptables для логгирования и отладки.

PS. Есть мнение не учитывать замечание про 40 секунд переключения в OSPF, т.к. это тайминги по умолчанию и если с ними поиграться, то можно добиться очень быстрой сходимости OSPF.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Проблема с OSPF+iptables"  +/
Сообщение от pavlinux (ok) on 31-Мрт-17, 03:09 
> Как заставить OSPF

Накой хрен OSPF, ты чо магистральный провайдер?

В локалке я даже не представляю... Ну если только вариант, когда у каждой 192.168.x.0/24
свой маршрутизатор с выходом в инет через 188.94.xxx.xxx/32 и все они между собой соединены,
причем расстояние меж ними под три километра (по проводу)...


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Проблема с OSPF+iptables"  +/
Сообщение от Elait (ok) on 31-Мрт-17, 11:25 
Проблема решилась заменой правила

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0/0 -j SNAT --to-source 188.94.xx.xx

на

iptables -t nat -A POSTROUTING -p tcp -s 192.168.0.0/24 -d 0/0 -j SNAT --to-source 188.94.xx.xx
iptables -t nat -A POSTROUTING -p udp -s 192.168.0.0/24 -d 0/0 -j SNAT --to-source 188.94.xx.xx
iptables -t nat -A POSTROUTING -p icmp -s 192.168.0.0/24 -d 0/0 -j SNAT --to-source 188.94.xx.xx

Спасибо.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "Проблема с OSPF+iptables"  +/
Сообщение от хзкто100500 on 05-Апр-17, 12:50 
>[оверквотинг удален]
> iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0/0 -j SNAT --to-source
> 188.94.xx.xx
> на
> iptables -t nat -A POSTROUTING -p tcp -s 192.168.0.0/24 -d 0/0 -j
> SNAT --to-source 188.94.xx.xx
> iptables -t nat -A POSTROUTING -p udp -s 192.168.0.0/24 -d 0/0 -j
> SNAT --to-source 188.94.xx.xx
> iptables -t nat -A POSTROUTING -p icmp -s 192.168.0.0/24 -d 0/0 -j
> SNAT --to-source 188.94.xx.xx
> Спасибо.

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 ! -d 192.168.0.0/24 -j SNAT --to-source 188.94.xx.xx
или
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o (интерфейс с белым ip) -j SNAT --to-source 188.94.xx.xx
не?

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру