Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    PfSense и КорбинаТелеком

    Russian
    12
    60
    42.9k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Sonya
      last edited by

      Использую pfsense версии 1.22 и соединение pptp.
      Локалка работает, но как-то странно. На интернет-адреса типа 89.222.xxx.xxx доступ через локалку есть, а на серые типа 10.xxx.xx.xxx или 192.168.xxx.xxx - нет, хотя и для тех и для других прописаны статические маршруты. Брандмауэр что-ли блокирует? Галочка на "Block private networks" снята.

      1 Reply Last reply Reply Quote 0
      • T
        TheRaven
        last edited by

        читай тему с начала :) вся суть ее и состоит в том что пфсенса не видит обе сети

        1 Reply Last reply Reply Quote 0
        • werterW
          werter
          last edited by

          А кто нибудь читал\пробовал попытку решения этой проблемы тут - http://trin-3-trin.livejournal.com/209046.html  ?? Вроде человек толково расписал ЧТО и КАК …

          Цитата :

          " upd4: Вроде бы нашел решение для сценария подключения, когда локалка провайдера (MAN) видна через статический ip, а интернет (WAN) - через туннель PPTP, так, чтобы локалка и интернет были видны одновременно. Это можно организовать через добавление на wan-интерфейс virtual ip (из диапазона адресов MAN) и переключения nat - outbound nat в режим AON (Advanced Outbound NAT). В этом режиме перед дефолтным правилом NAT, транслирующим все пакеты в туннель, ставится правило, транслирующее пакеты для локалки провайдера в тот предварительно созданный виртуальный ip. Вроде бы, работает, хотя точнее проверить не на чем. Да, еще прописать статические маршруты для других провайдерских сетей, если есть таковые в MAN. Вообще, интересно, что такой сценарий практически никогда не реализуется в западных продуктах и конфигах. Только точка-точка. Видимо, этот этап городских ethernet сетей они уже прошли. "

          1 Reply Last reply Reply Quote 0
          • S
            SB HidDeN
            last edited by

            сам повторил подобное - работает со статикой…  DHCP - пока проблема...

            1 Reply Last reply Reply Quote 0
            • S
              Sonya
              last edited by

              @werter:

              А кто нибудь читал\пробовал попытку решения этой проблемы тут - http://trin-3-trin.livejournal.com/209046.html  ?? Вроде человек толково расписал ЧТО и КАК …

              Опробовал, вроде как работает. Раз пять перечитал, пока въехал :), Только получается для каждой локальной подсети нужно создавать своё правило. Сами сети у меня добавляются в таблицу маршрутов при помощи скрипта. Самих маршрутов около 140 штук, вручную написать столько правил NAT просто нереально.

              1 Reply Last reply Reply Quote 0
              • L
                lhassa
                last edited by

                пока даже пробовать не буду, pfsense тем и хорош что это freebsd из коробки с удобным и достаточно функциональным интерфейсом, и донастраивать ее с помощью скриптов не совсем правильно
                так что пока использую там где прямой канал, без ppp

                я не понимаю что мешает разработчикам сделать все интерфейсы равноправными (отказаться от разделения на lan и wan) как в микротик
                в первую очередь жду от 2.0 именно этого функционала

                1 Reply Last reply Reply Quote 0
                • S
                  Shraik
                  last edited by

                  Проблема, вовсе не в том, что есть предопределенные LAN и WAN. Их идеологическое предназначение разделять Внешние и внутренние сети по отношению к ФАЙРВОЛУ.
                  проблема состоит в том, как поднимаются внешние динамические интерфейсы. при поднятии происходит перекрытие родительского интерфейса, а нам хотелось-бы создания нового.
                  Как вы понимаете делается это на уровне скриптов, потому, как во freebsd основной интерфейс никуда не девается. Он просто "прячется" от пользователя.
                  Можно добавить этот спрятанный интерфейс поигравшись с файликом "interfaces_assign.php"
                    заменить на

                  Но система после этого работает несколько не стабильно. Надо допиливать дальше или менять процедуру создания динамического интерфейса

                  1 Reply Last reply Reply Quote 0
                  • S
                    SB HidDeN
                    last edited by

                    действительно…самое непонятное именно в этом... зачем скрывать родительский интерфейс, если он вполне может конфигурироваться отдельно... через тот же DHCP...
                    по своему роду деятельности часто приходится смешивать разнородные ОС,
                    в зависимости от задач... порадовало наличие гибких настроек,
                    но при этом расстроило отсутствие некоторого основного функционала... ((
                    еще не хватает описания внутренних функций реализованных через PHP...
                    и реакций на события...(пропадание пинга, поднятие-падение интерфейса, + того же cron-a в GUI)

                    1 Reply Last reply Reply Quote 0
                    • S
                      Sonya
                      last edited by

                      С настройками outbound NAT вроде определились, после некоторых нестандартных телодвижений с Virtual IP начинает работать.
                      А вот как быть с Port Forward, если надо какой-нибудь порт пробросить внутрь своей локалки? У кого-нибудь работает?
                      По идее всё правильно:
                      Interface WAN
                      External address - тот самый виртуальный IP, что создавали для NAT: Outbound
                      External port range и Local port поставил одинаковые, решил не выёживаться.
                      NAT IP - адрес компа в моей локалке.
                      Но не работает!
                      В Diagnostics -> Packet capture видно, что нужные пакеты в роутер прилетают. А вот дальше - нет. Нету их и в States.

                      1 Reply Last reply Reply Quote 0
                      • S
                        Sonya
                        last edited by

                        @agt:

                        загружаются с помощью команды pfctl -F /tmp/rules.debug.

                        загрузка через команду pfctl -f /tmp/rules.debug, в юниксе большие и маленькие отличаются.

                        Сейчас обошёлся всего двумя строчками, чтобы сделать два ната на локалку и инет. Поправил /tmp/rules.debug вместо

                        # Outbound NAT rules
                        nat on $ng0 from 192.168.6.0/24 to 10.0.0.0/8 -> 10.70.251.93/32
                        nat on $ng0 from 192.168.6.0/24 to 87.249.56.0/22 -> 10.70.251.93/32
                        skip-skip
                        nat on $ng0 from 192.168.6.0/24 to 89.222.128.0/17 -> 10.70.251.93/32
                        nat on $ng0 from 192.168.6.0/24 to any -> (ng0)
                        
                        

                        сделал

                        # Outbound NAT rules
                        nat on xl0 from 192.168.6.0/24 to any -> 10.70.251.93/32
                        nat on ng0 from 192.168.6.0/24 to any -> (ng0)
                        
                        

                        Загружаю через ssh модернизированный конфиг и запускаю pfctl -f /tmp/rules.debug
                        Всё работает до перезагрузки или первого изменения правил.

                        Так же расправился и с маппингом портов.

                        # NAT Inbound Redirects
                        rdr on xl0 proto { tcp udp } from any to 10.70.251.93/32 port { 801 } -> 192.168.6.1
                        rdr on xl0 proto tcp from any to 10.70.251.93/32 port { 3389 } -> 192.168.6.1
                        rdr on xl0 proto tcp from any to 10.70.251.93/32 port { 80 } -> 192.168.6.1
                        
                        

                        и брандмауэром

                        # User-defined rules follow
                        pass in quick on $lan from 192.168.6.0/24 to any keep state  label "USER_RULE: Default LAN -> any"
                        pass in quick on $wan reply-to (xl0 10.70.251.1) proto { tcp udp } from any to {  192.168.6.1 } port = 801 keep state  label "UER_RULE: NAT DC"
                        pass in quick on $wan reply-to (xl0 10.70.251.1) proto tcp from any to {  192.168.6.1 } port = 3389 keep state  label "USER_RUL: NAT RDP"
                        pass in quick on $wan reply-to (xl0 10.70.251.1) proto tcp from any to {  192.168.6.1 } port = 80 keep state  label "USER_RULE: NAT HTTP"
                        
                        

                        Осталось дело за малым, найти где в php этот конфиг генерится и внести нужные изменения.
                        Код, который генерит этот конфиг, скрывается в /etc/inc/filter.inc, вот в него и нужно внести необходимые изменения.
                        Может кто-нибудь разбирающийся в php поправит, чтобы можно было выбирать нужные интерфейсы в webgui и при этом генерился правильный /tmp/rules.debug?

                        PS: В приведённых примерах xl0 - локалка провайдера, а xl1 - домашняя локалка.

                        1 Reply Last reply Reply Quote 0
                        • H
                          Helfer_Panch
                          last edited by

                          Думаю будет нелишнем привести пример конфигурирования m0nowall, так сказать, с нуля. Постораюсь описать процесс для неопытных пользователей на банальном языке, тк таким пользователям очень тяжело понимать все абривиатуры используемые на форумах настройки.
                          Сам столкнулся с проблемой организации сети дома. Провайдером введена следующая схема подключения - мне выдается серый ip с которым я могу ходить по внутренним ресурсам и по ресурсам пиринга. Что бы воспользоваться инетом необходимо подключать VPN (PPTP), при этом появляется белый ip, думаю что структура схожая с корбиной.

                          За основу в данный момент взята версия мода 0.3b2, которую можно взять здесь, http://m0n0wall-mod.googlecode.com/.
                          Не кривя душой могу сказать, что версии 0.2 и 0.3b1 появиллись в ходе переписки с автором, для решения проблемы которая возникла у меня, за что ему ОГРОМНОЕ спасибо.

                          После загрузки m0n0wall определяете интерфэйсы и далее необходимо создать WAN eth.
                          Чтобы добавить WAN eth, подключите pptp и идите на страницу interfaces_assign.php. Когда добавите, перегрузите роутер.
                          В Outbound NAT включите галочку "Enable advanced outbound NAT" и сделайте правила для своей сети.
                          Одно правило для WAN дефолтное, и второе для WAN eth для локальной сети провайдера.
                          В Target ничего не пишите.

                          Для уменьшения головной боли опишу сам процесс создания правил.

                          Дефолтное правило создается очень просто:
                          Допустим вы для своей внутренней сети определили адресацию 192.168.1.0/24. В пункте Interface выбераем "WAN", далее Source прописываем "192.168.1.0/24", далее Destination выбираем "any", все остальные поля оставляем пустыми, жмем Save. Вот собственно и все с дефолтом.

                          Теперь правило для серой сети:
                          Сразу оговорюсь, что все правила для серой сети пишуться для тех же подсетей что и статические маршруты, иначе не будет работать…
                          Нажимаем на кнопку добавить правило, В пункте Interface выбераем "WAN eth", далее Source прописываем "192.168.1.0/24", далее Destination выбираем "Network", здесь же Address "указываем подсеть статического маршрута" например "172.16.0.0/12". Жмем Save.

                          После создания всех правил в данном пункте нажимаем кнопку Apply changes.

                          Переходим в Static routes и добавляем статические маршруты.

                          Теперь в настройках WAN прописываем имя пользователя и пароль. После этого должно все заработать.

                          Для проброса портов, допустим для пользования сетями P2P в активном режиме необходимо настроить портфорвардинг.
                          В данном случае я послупил следующим образом, заходим NAT->inbound и создаете правило:
                          Т.к в своем случае я пользуюсь сетью dc++ только в серой сети,мое правло выглядит следующим образом:
                          Interface "WAN eth", External address "interface address", Protocol "tcp/udp", External port range(указываем порт, который необходимо будет прописать в p2p клиенте) 31233-31233, NAT IP(прописываем IP внутреннего компа, на котором установлен клиент) для примера "192.168.1.157", Local port "31233". Жмете Save.
                          Если у вас несколько компов, которым нужен портфорвардин, то для каждого нужно указывать индивидуальный порт(ВАЖНО).

                          Чтобы портфорвардинг заработал, еще необходимо создать правила во вкладке RULES.
                          Для моего случая, опять же, заходим rules->WAN eth и жмем создать:
                          Action "pass", Interface "WAN eth", Protocol "TCP/UDP", Source "any", Source port range "any-any", Destination "lan subnet", Destination port range "31233-31233", жмем Save.

                          Незабываем про "apply changes"..

                          Думаю что после этого не должно возникать никаких проблем и все должно работать..

                          Если кому то интересно, могу описать насройку PPTP сервера для подключений из серой сети провайдера и интернета, хотя навверное и даже из внутренней сети..

                          Успехов вам господа, думаю моя работа будет востребвана и время потраченно не зря! (;

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post
                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.