Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » роутер на FreeBSD 9

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

Acden



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть три сети, со стороны сервера выглядят так:
 

  • if1 192.168.6.5 (255.255.255.0)
  • if2 172.21.137.4 (255.255.255.0), через 172.21.137.1 видна сеть 172.16.0.0
  • if3 10.72.72.163 (255.255.255.224), через неё интернет

 
Сейчас настроил маршрутизацию, компьютеры сети 192.168.6.0 видят компьютеры 172.21.137.0.
 
Что теперь мне нужно настроить чтобы они выходили через сервер в Интернет (ч-з интерфейс №3)?
 
Сейчас в /etc/rc.conf:

Код:
defaultrouter="172.21.137.1"

но при этом компьютер  172.16.5.201 не виден. Нужно прописать к нему статический маршрут? (когда сервер увидит его, как сделать доступ к нему из сети 192.168.6.0?)
 
И второй вопрос, почему когда сервер его видит (этот 5.201), то компьютеры if1 его ещё не видят?  
 
Для интернета: DNS: 10.0.1.1
Какими средствами сделать доступ сети if1 до DNS через шлюз 10.72.72.161?
Ведь у меня уже указан шлюз по умолчанию, для другой сети? Как теперь пакеты, предназначенные для интернета, перекидывать через if3?
 
Во внутренней сети нужно выставить в  интернет web-сервер. Какими средствами это лучше делать?
 
Затем мне нужно будет учитывать трафик. И сделать авторизацию пользователей (для этого планирую Stargazer). Верно?
 
Ну также планирую squid, возможно, rejik.
 
Итак, снова повторю первичные для меня вопросы:  
- какими средствами настроить маршрутизацию в этих трех сетях?
- Какими средствами пробрасывать порт?  
- И стоит ли для файрволла выбрать ipfw, или рассмотреть и другие варианты?

Всего записей: 30 | Зарегистр. 26-07-2006 | Отправлено: 01:10 19-11-2012
urodliv



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Профильная тема по вашему вопросу находится здесь. Там задаём вопросы. Но перед заданием вопросов ходим по ссылкам в шапке и читаем, читаем, читаем.

----------
Очень скоро еда станет совершенно безвкусной, и тогда этот недостаток придётся компенсировать хорошо развитым воображением.

Всего записей: 6691 | Зарегистр. 29-04-2009 | Отправлено: 01:26 19-11-2012
bga83



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Профильная тема по вашему вопросу находится здесь.
там про фаерволы тема, а у Acden проблема в большей степени в маршрутизации.
 
По сути вопроса: прежде всего не верно указан шлюз по умолчанию для сервера. Им должен выступать адрес шлюза провайдера, то есть он должен быть из сети 10.72.72.163/27. А все локальные сети прописываются в виде статических маршрутов. В данном случае надо прописать только маршрут в сеть  172.16.0.0/хх через 172.21.137.1. Но чтобы эта сетка стала доступной этого мало. На маршрутизаторе 172.21.137.1 так же должна быть выполнена соответствующая настройка маршрутизации.
 

Цитата:
когда сервер увидит его, как сделать доступ к нему из сети 192.168.6.0?
разрешить передачу пакетов между интерфейсами сервера опцией
gateway_enable= yes
 

Цитата:
Какими средствами сделать доступ сети if1 до DNS через шлюз 10.72.72.161?
достаточно поднятия NAT. Но я бы сделал не так. А поднял бы локальный кеширующий DNS на шлюзе, которым бы и заставил пользоваться всех в локальной сети, вместо сервера провайдера. А его вот его уже при желании можно настроить на разрешение имен с использованием провайдерского DNS.
 

Цитата:
Ведь у меня уже указан шлюз по умолчанию, для другой сети? Как теперь пакеты, предназначенные для интернета, перекидывать через if3?  
как уже написал чуть раньше, не верно указан шлюз по умолчанию.
 

Цитата:
Во внутренней сети нужно выставить в  интернет web-сервер. Какими средствами это лучше делать?  
вообще для этого используется проброс портов, реализованный через NAT. Но чтобы сервер был доступнен из интернета надо иметь реальный IP-адрес, а не серый как у тебя. Либо заставить провайдрера выполнить дополнительно проброс с какого-то реального адреса на твой серый, что не очень хорошо, да и маловероятно, что пров на этой пойдет.
 
 

Цитата:
И сделать авторизацию пользователей (для этого планирую Stargazer). Верно?
исключительно твои пожелания. По мне так достаточно авторизации на проксе, и все.
 

Цитата:
- И стоит ли для файрволла выбрать ipfw, или рассмотреть и другие варианты?
во фре по сути два фаервола ipfw и pf. Каждый имеет свои особенности. Если трафик, проходящий через твой сервак будет менее 150-180Мбит/сек, то лучше pf, он несколько проще для написания правил. Если трафик будет больше, то ipfw, так как он способен работать в несколько потоков, в отличии от однопоточного pf.

Всего записей: 2008 | Зарегистр. 30-11-2007 | Отправлено: 10:04 19-11-2012 | Исправлено: bga83, 10:05 19-11-2012
Acden



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемый bga83, дело в том, что через эту сеть (маршрутизатор которой стоит по умолчанию) тоже пойдёт интернет (2 канала интернета). Одной части компьютеров надо давать интернет через VPN от 172.21.137.1 сети, другой части от 10.72.72.161 сети!
 
Как при этом поступить?
 
====
 
gateway_enable= yes  
Это уже стоит, но почему-то не маршрутизует с 192.168.6.0 до 172.21.137.1  (хотя, на сервере доступ есть). Однако, маршрутизует до компа 172.21.137.4 (который воткнут в тот же свитч, 137.1 стоит на сервере провайдера).  
 
Почему он не дает ping до 137.1, ведь сам его локально пингует?
Клиенты могут при этом пинговать 137.4
 
====
 
 Но я бы сделал не так. А поднял бы локальный кеширующий DNS на шлюзе, которым бы и заставил пользоваться всех в локальной сети, вместо сервера провайдера.
 
Можно и так! Какими средствами его лучше поднять?
(кстати, мысль родилась, я же делаю в образовательном учреждении. А один интернет у нас бесплатный на низкой скорости – вот на него можно делать запросы на DNS, может получу незначительную, но экономию трафика?!)
===

Цитата:
достаточно поднятия NAT. Но я бы сделал не так.

NAT-то всё равно будет нужен, не для DNS, дак для интернет узлов.
 
===

Цитата:
как уже написал чуть раньше, не верно указан шлюз по умолчанию.

Как быть когда провайдеров 2?
 
 
 

Цитата:
вообще для этого используется проброс портов, реализованный через NAT.

Это понятно что проброс. Я спрашивал – чем? думал что ipfw, но вообще для этого ли файрволл. В общем, чем сделать проброс, посоветуйте, пожалуйста?
(хотя, это самый простой вопрос – сложнее два интернета)
 
===

Цитата:
исключительно твои пожелания.

Пусть они тоже видят свой трафик, и чтобы легче было делать политику использования интернета, отслеживать статистику и т.д.
Ну и решения на Squid тоже рассматриваются с преогромным удовольствием!

Всего записей: 30 | Зарегистр. 26-07-2006 | Отправлено: 08:40 20-11-2012
bga83



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 дело в том, что через эту сеть (маршрутизатор которой стоит по умолчанию) тоже пойдёт интернет (2 канала интернета). Одной части компьютеров надо давать интернет через VPN от 172.21.137.1 сети, другой части от 10.72.72.161 сети!  
Все равно шлюз по умолчанию должен быть выставлен то, что из сети 10.72.72.163/27. Раз для второго провайдера будет доступ через VPN, то достаточно наличия маршрутов до VPN-сервера, далее вопрос маршрутизации будет решен в рамках нового интерфейса. Если VPN будут терминироваться на 172.21.137.1, то дополнительно ничего прописывать не надо, так как сервер про эту сеть и так знает.
 

Цитата:
Это уже стоит, но почему-то не маршрутизует с 192.168.6.0 до 172.21.137.1  (хотя, на сервере доступ есть). Однако, маршрутизует до компа 172.21.137.4 (который воткнут в тот же свитч, 137.1 стоит на сервере провайдера).
на сервере 172.21.137.1 так же должна быть прописана маршрутизация до сети 192.168.6.0. Судя по всему этого нет. И получается, что из 192.168.6.0 пакеты до 172.21.137.1 доходят нормально, а вот обратные уходят в неверном направлении.
 

Цитата:
Можно и так! Какими средствами его лучше поднять?  
при стандартной установке FreeBSD в системе уже присутствует bind, им бы я и воспользовался. Можно найти и альтернативы ему, я не вижу особого смысла, хотя бело предпочтений.
 

Цитата:
ожно делать запросы на DNS, может получу незначительную, но экономию трафика?!

экономия если и будет, то не заметная. тут вот в чем дело: провайдер по договору обязан предоставлять доступ в интернет, за это он несет ответственность. А вот работоспособность его DNS-серверов ничем не гарантируется(во всяком случае я ни разу такого в договорах не видел).
 

Цитата:
Как быть когда провайдеров 2?  
Надо понимать для начала политику исходя из которой будет происходить использование того или иного канала и как именно пользователям будет предоставляться доступ.
 

Цитата:
Я спрашивал – чем? думал что ipfw, но вообще для этого ли файрволл. В общем, чем сделать проброс, посоветуйте, пожалуйста?

опять же дело предпочтений. Если использовать ipfw, то нат может быть как ядерным, так и в виде отдельного демона natd (или аналоги). pf в своем составе уже имеет NAT. Учитывая, что похоже опыта ни с тем ни с другим у тебя не особо много, то целесообразно исходить из озвученного мною ранее критерия - планируемой нагрузки. Свыше 150-180Мбит/сек - ipfw, менее pf. У меня нагрузка превышающая 180Мбит появилась исключительно на двух провайдерах по 50Мбит и нескольких крупных сегментах сети, между которыми гонялись довольно большие потоки данных.
 

Цитата:
Пусть они тоже видят свой трафик, и чтобы легче было делать политику использования интернета, отслеживать статистику и т.д.
Ну и решения на Squid тоже рассматриваются с преогромным удовольствием!
статистикой, ориентированной на пользователей, особо я не занимался. Максимум что делал squid+sarg. Но в такой связке идет только учет трафика, проходящего через squid. То что пойдет в его обход(почтовые протоколы, торенты и пр.) не включится в статистику. Для этого можно поднять netflow. Но действительная/практическая надобность подобного у меня вызывает большие сомнения.

Всего записей: 2008 | Зарегистр. 30-11-2007 | Отправлено: 10:13 20-11-2012 | Исправлено: bga83, 10:14 20-11-2012
Acden



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
на сервере 172.21.137.1 так же должна быть прописана маршрутизация до сети 192.168.6.0. Судя по всему этого нет. И получается, что из 192.168.6.0 пакеты до 172.21.137.1 доходят нормально, а вот обратные уходят в неверном направлении.  

Это не в моих силах... получается, надо сделать на него NAT?
 

Цитата:
Цитата:
Как быть когда провайдеров 2?  
Надо понимать для начала политику исходя из которой будет происходить использование того или иного канала и как именно пользователям будет предоставляться доступ.  

Часть компьютеров получает доступ из первого инета, часть - из второго. Плюс все умеют ходить на сервер 172.16.5.100 через 172.21.137.4.
 
Читал что natd вроде плох тем что не встроен в ядро, встроенный в ядро NAT будет быстрее и, вроде, эффективнее работать...
 
 

Всего записей: 30 | Зарегистр. 26-07-2006 | Отправлено: 11:30 20-11-2012
bga83



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 
Это не в моих силах... получается, надо сделать на него NAT?  

да
 

Цитата:
Часть компьютеров получает доступ из первого инета, часть - из второго.

если доступ во "второй интеренет" осуществляется путем установления VPN соединения к серверу  172.21.137.1, то шлю зпо умолчанию должен быть именно в ссети  10.72.72.163/27, остальное само разрулится в рамках созданных интерфейсов.
 

Цитата:
Читал что natd вроде плох тем что не встроен в ядро, встроенный в ядро NAT будет быстрее и, вроде, эффективнее работать...  

а я читал и совершенно противоположные вещи. На практике у себя особой разницы не заметил. Повторюсь - по возможности используй pf.

Всего записей: 2008 | Зарегистр. 30-11-2007 | Отправлено: 13:37 20-11-2012
Acden



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bga83, Вы – гений! Я от Вас получил именно тех ответов, что ждал от этой темы.
 
И придя сегодня на работу, я за 10 минут настроил всё что хотел.
 
NAT через pf. Вот по этой инструкции: http://nixadm.ru/archives/564
(на удивление всё сразу заработало!!! Я был в шоке что в юниксе вот так сразу все команды сработали правильно под FreeBSD.)
 
Сделал также правила на нат через второй интерфейс. Правда пока не понял как работают два нат'а одновременно?! Видимо, он сначала ищет на локальных, затем уходит в интернет если таких адресов не оказалось на внутренних интерфейсах?
 
Всё работает, кроме проброса на порт https (443). Добавил такое правило, но пока "ноль эмоций": pass in quick on $if reply-to($if $gw) inet proto tcp to $ip port 443

Всего записей: 30 | Зарегистр. 26-07-2006 | Отправлено: 20:32 20-11-2012
bga83



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Всё работает, кроме проброса на порт https (443). Добавил такое правило, но пока "ноль эмоций": pass in quick on $if reply-to($if $gw) inet proto tcp to $ip port 443  

 
для проброса надо 2 правила писать: одно непосредственно проброса в NAT-секции и второе фаервольное разрешающее хождение пакетов.
 
То есть должно быть нечто в духе:
 
rdr on <ext_if> proto tcp from any to <ext_ip> port 443 -> <server_ip>
pass proto tcp from any to <server_ip> port 443 keep state
 
 
Может конечно еще придется повозиться с опциями reply-to, хотя не не факт.
 
 

Цитата:
Сделал также правила на нат через второй интерфейс. Правда пока не понял как работают два нат'а одновременно?!
если ты правильно все прописал, то привила должны отличаться тем,  что прописано в адресах назначения пакетов, которые будут через NAT проходить.
 

Цитата:
 я за 10 минут настроил всё что хотел
с ipfw такое на вряд ли получилось бы.
 

Всего записей: 2008 | Зарегистр. 30-11-2007 | Отправлено: 10:11 21-11-2012
Acden



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bga83, указанные команды не помогли...
 
и вообще когда я включаю нат на двух интерфейсах, то он вообще прекращает куда-либо пускать компьютеры из локалки – теряется где натить?
 
pass in quick on $if reply-to($if $gw) inet proto tcp to $ip port 443  
У меня будет:
$if - смотрит в локалку 192.168.
$gw - здесь что за гв нужно? Тот интерфейс через который доступен 172.21.137.x через 443 порт?
pass in quick on $if reply-to($if $gw) inet proto tcp to $ip port 443  
 
pass in quick on re0 reply-to(re0 rl1) inet proto tcp to 172.21.137.x port 443  

Всего записей: 30 | Зарегистр. 26-07-2006 | Отправлено: 08:43 27-11-2012
bga83



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Acden
покажи все правила ната  (pfctl -sn). я если честно так и не понял зачем ты связался с reply-to опциями.

Всего записей: 2008 | Зарегистр. 30-11-2007 | Отправлено: 09:58 27-11-2012
Acden



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
На самом деле, я вобще пока не разбирался с pf. Я просто сделал всё по инструкции, в указанной мной ссылке выше.
 
А недавно понял какой я балбес )))
 
Скорее всего 443 порт у меня давно маршрутизуется. Просто компьютер отвечает по 80 порту, а 443 он проброшен через сеть провайдера... (т.е. со внешки он 443, а ко мне не знаю на какой порт пересылает). Дак вот, получается ведь чтобы 443 порт на компьютере работал (Win Server) нужно как-то сертификат покупать, привязывать?

Всего записей: 30 | Зарегистр. 26-07-2006 | Отправлено: 20:23 03-12-2012
bga83



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Просто компьютер отвечает по 80 порту, а 443 он проброшен через сеть провайдера... (т.е. со внешки он 443, а ко мне не знаю на какой порт пересылает). Дак вот, получается ведь чтобы 443 порт на компьютере работал (Win Server) нужно как-то сертификат покупать, привязывать?

не путай теплое с мягким. То какой порт проброшен вообще не принципиально, важно чтобы клиент и сервер работали по одному и тому же протоколу. Если тебе хочется шифрования(учитывая что на 443 порту обычно висит https с SSL), то сертификат не обязательно покупать, можно воспользоваться своим самоподписанным. Соединение  будет шифроваться, но по умолчанию в броузерах клиентов будет выдаваться предупреждение о том что нет доверия сертификату.

Всего записей: 2008 | Зарегистр. 30-11-2007 | Отправлено: 21:04 03-12-2012
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » роутер на FreeBSD 9


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru