Quagga OSPF
-
Ребята, помогите плз…чего-то я вообще не пойму что происходит, ни при каких вариантах...
Что имеем:
1. Шлюз_1
WAN: 94.27.XX.X1/29
LAN: 192.168.2.0/24
2. Шлюз_2
WAN: 94.27.XX.X2/29
LAN: 192.168.3.0/24
Оба шлюза стоят рядышком и подключены в тупой свитч от одного провайдера.
На обоих стоит pfSense 2.0.2-RELEASE (amd64) и пакет Quagga OSPF (из Packages, хотя из портов тоже пробывал ставить, и нифига, ситуЁвина та же) и настроено согласно вот этого топика: http://forum.pfsense.org/index.php/topic,58846.0.html. OSFP поднимается, все замечательно, а попингуя нет и доступа между сетями тоже, и в чем причина никак не могу понять!!!
В фаерволе разрешил WAN подсети ходить как угодно и куда угодно, так же добавил правило для локальных сетей, снял галочки на в настройках WAN интерфейса "Block private networks" и "Block bogon networks". Где гоню, подскажите пожалуйста.
HELP ME PLEASE!!! А то скоро шарики за ролики заедут совсем…ЗюЫю: Так же к прочтены были следующие доки:
1. http://myfreebsd.ru/network/ospf-osnovy-dinamicheskoj-marshrutizacii
2. http://subnets.ru/wrapper.php?p=36
3. http://www.freebsd.org/cgi/man.cgi?query=ospfd&sektion=8&apropos=0&manpath=FreeBSD+Ports+9.0-RELEASE
4. http://www.hilik.org.ua/%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%B0%D0%B8%D0%B2%D0%B0%D0%B5%D0%BC-ospf-%D0%B2-quagga/ - это собственно мой вариант, только 2 сервака и шлюз прова.
5. http://forum.lissyara.su/viewtopic.php?f=14&t=14464
6. http://muff.kiev.ua/content/quagga-prevrashchenie-servera-v-polnofunktsionalnyi-marshrutizator -
Ваши локальные сети идут наружу через NAT, они как бы скрыты за ним. Т.е. представьте, первый шлюз знает, что сеть 192.168.3.х находится за вторым и шлет в нее пинг. Пусть даже провайдер не режет серые сети на своем оборудовании (хотя, в общем случае это не так) и пинг приходит в сеть за вторым шлюзом. Ответ от хоста во второй сети NATится на выходе из шлюза 2 в его внешний адрес и закономерно отбрасывается первым шлюзом так как он ждет ответа от 192.168.3.3, а вовсе не от 94.27.XX.X2.
Совсем по-другому обстоят дела, когда у вас есть туннель между сетями. В этом случае по сути на каждом из концов у вас как бы добавляется еще одна локальная сеть, в которую есть доступ без NATа (чисто роутинг), и о которой провайдер ничего не может знать в принципе. В итоге все работает. -
Ваши локальные сети идут наружу через NAT, они как бы скрыты за ним. Т.е. представьте, первый шлюз знает, что сеть 192.168.3.х находится за вторым и шлет в нее пинг. Пусть даже провайдер не режет серые сети на своем оборудовании (хотя, в общем случае это не так) и пинг приходит в сеть за вторым шлюзом. Ответ от хоста во второй сети NATится на выходе из шлюза 2 в его внешний адрес и закономерно отбрасывается первым шлюзом так как он ждет ответа от 192.168.3.3, а вовсе не от 94.27.XX.X2.
Совсем по-другому обстоят дела, когда у вас есть туннель между сетями. В этом случае по сути на каждом из концов у вас как бы добавляется еще одна локальная сеть, в которую есть доступ без NATа (чисто роутинг), и о которой провайдер ничего не может знать в принципе. В итоге все работает.Я правильно понимаю, если я в свою "конструкцию сети добавлю еще 1 маршрутизатор на базе pfSense и сделаю следующую схему:
1. Шлюз_1
WAN: 94.27.XX.X5/29
LAN: 94.27.XX.X4/29
GW: 94.27.XX.X1/29
2. Шлюз_2
WAN: 94.27.XX.X2/29
LAN: 192.168.2.0/24
GW: 94.27.XX.X4/29
2. Шлюз_2
WAN: 94.27.XX.X3/29
LAN: 192.168.3.0/24
GW: 94.27.XX.X4/29
Исходя из этого WAN Шлюз_1 подключу напрямую к провайдеру, LAN подключу в тупой свитч, WAN Шлюз_2 и Шлюз_3 подключаю в этот же тупой свитч, LAN соответственно в локалку.
На всех 3-х Шлюзах настрою OSPF и после этого все должно заработать, да? -
Попробуйте просто перевести Firewall -> NAT Outbound в Manual режим и сделать наверху правила NO-NAT для общения между двумя вашими шлюзами. Т.е. чтобы травик из 192.168.3.х в 192.168.2.х не NAT-ился, и наоборот. Третий шлюз вам не поможет, причина в NAT.
-
Попробуйте просто перевести Firewall -> NAT Outbound в Manual режим и сделать наверху правила NO-NAT для общения между двумя вашими шлюзами. Т.е. чтобы травик из 192.168.3.х в 192.168.2.х не NAT-ился, и наоборот. Третий шлюз вам не поможет, причина в NAT.
Как должно выглядеть правило?
А то я чуть не уложил 2 Шлюза с настройками ната…
Interface WAN
Source ВНЕШНИЙ IP
Source Port ANY
Destination ВНУТРЕННИЙ IP
Destination Port ANY
NAT Address ANY
NAT Port ANY
Static Port NOТаким образом?
-
-
Как должно выглядеть правило?
http://forum.pfsense.org/index.php/topic,54771.0.html
Для того что бы поставить галочку на нужном правиле, его надо сначала правильно написать, вопрос на текущий момент именно в этом.
-
На обоих шлюзах переводите NAT-Outbound в Manual
на первом делаете правило:Do not NAT X
Interface WAN
Source 192.168.2.0/24
Destination 192.168.3.0/24на втором:
Do not NAT X
Interface WAN
Source 192.168.3.0/24
Destination 192.168.2.0/24и на обоих шлюзах ставите это правило первым по списку
-
На обоих шлюзах переводите NAT-Outbound в Manual
на первом делаете правило:Do not NAT X
Interface WAN
Source 192.168.2.0/24
Destination 192.168.3.0/24на втором:
Do not NAT X
Interface WAN
Source 192.168.3.0/24
Destination 192.168.2.0/24и на обоих шлюзах ставите это правило первым по списку
Щас проверю, отпишусь…
-
На обоих шлюзах переводите NAT-Outbound в Manual
на первом делаете правило:Do not NAT X
Interface WAN
Source 192.168.2.0/24
Destination 192.168.3.0/24на втором:
Do not NAT X
Interface WAN
Source 192.168.3.0/24
Destination 192.168.2.0/24и на обоих шлюзах ставите это правило первым по списку
Не заработало! :( Всиравно идет на прова…где-то глюк...
-
Трабла все же я так понимаю в нате…вообщем снес я пакедж, и поставился из портов, пакет quagga-re, настроил конфиги, получил что надо, все ок, "НО"...попингуев всиравно нет...соответственно есть необходимость настроить нат...вопрос как?!?!?!?!?! :-\
-
Diagnostics -> Routes приведите с обоих шлюзов для уверенности
-
Diagnostics -> Routes приведите с обоих шлюзов для уверенности
Вот привожу, в прикреплении 2 файла, один со скрином от сервака 192.168.2.0/24, второй 192.168.3.0/24.
-
Ээ.. в общем забудьте. Вспомнил, что pfSense не поддерживает несколько шлюзов на одном интерфейсе. В этом и вся проблема. Странно конечно, но это так. Непонятный косяк на L2. Вот Packet capture с WAN шлюза 2 (машина за шлюзом 2 пингует машину за шлюзом 1):
16:54:34.324876 00:0c:29:9e:40:54 > 00:0c:29:4a:b4:4b, ethertype IPv4 (0x0800), length 74: (tos 0x0, ttl 127, id 1432, offset 0, flags [none], proto ICMP (1), length 60)
192.168.3.2 > 192.168.2.2: ICMP echo request, id 512, seq 20224, length 40Здесь все нормально, в частности 00:0c:29:9e:40:54 - MAC WAN второго шлюза, 00:0c:29:4a:b4:4b - MAC WAN первого шлюза. Но ответы не приходят. А почему? Потому, что на первом шлюзе:
16:54:34.341104 00:0c:29:9e:40:54 > 00:0c:29:4a:b4:4b, ethertype IPv4 (0x0800), length 74: (tos 0x0, ttl 127, id 1432, offset 0, flags [none], proto ICMP (1), length 60)
192.168.3.2 > 192.168.2.2: ICMP echo request, id 512, seq 20224, length 40
16:54:34.341663 00:0c:29:4a:b4:4b > 00:0c:29:70:d9:9e, ethertype IPv4 (0x0800), length 74: (tos 0x0, ttl 127, id 6541, offset 0, flags [none], proto ICMP (1), length 60)
192.168.2.2 > 192.168.3.2: ICMP echo reply, id 512, seq 20224, length 40где левый 00:0c:29:70:d9:9e - MAC провайдерского шлюза, на который и летит в результате ответ. Все тем более загадочно, что со второго шлюза все летит четко по MAC-ам, а обратно - уже нет))
Вывод: если вам так принципиален OSPF, делайте VLAN между шлюзами (не факт, что даже тупой свитч порежет метки), либо поднимайте между ними туннель.
-
Ээ.. в общем забудьте. Вспомнил, что pfSense не поддерживает несколько шлюзов на одном интерфейсе. В этом и вся проблема. Странно конечно, но это так. Непонятный косяк на L2. Вот Packet capture с WAN шлюза 2 (машина за шлюзом 2 пингует машину за шлюзом 1):
Вывод: если вам так принципиален OSPF, делайте VLAN между шлюзами (не факт, что даже тупой свитч порежет метки), либо поднимайте между ними туннель.
Обнадеживающе…ладно...буду экспериментировать с чистой FreeBSD...Спасибо за помощь...