imho.ws |
|
|
Сообщения:
Перейти к новому /
Последнее
|
Опции темы |
19.09.2010, 19:43 | # 1 |
Junior Member
Регистрация: 03.11.2003
Адрес: Гражданин Вселенной
Пол: Male
Сообщения: 134
|
Не работает маршрутизация на FreeBSD - прошу помощи.
Задача вобщем-то простейшая:
1. Компьютер с двумя сетевухами. 2. Свежеустановленная FreeBSD 8.1 Нужна связь между двумя подсетями (10.0.0.0. и 192.168.1.0) а её нету! Есть опыт настройки маршрутизации на Win2003; такой вариант создаю впервые, но теорию понимаю, документацию по настройке прочитал. Сам роутер прекрасно "видит" Компьютеры в обоих подсетях. Из сети 10.0.0.0 пинг "доходит" только до второй сетевухи rl0 192.168.1.100 и наоборот -- из сети 192.168.1.0 пингуется только интерфейс vr0 (10.0.0.250), но не более того :-( Файрвола никакого не стоит. Привожу фрагмент /etc/rc.conf Код:
ifconfig_vr0="inet 10.0.0.250 netmask 255.255.255.0" ifconfig_rl0="inet 192.168.1.100 netmask 255.255.255.0" router_enable="YES" gateway_enable="YES" Вопрос 2: не понимаю, что означает следующий отклик на команду routed: routed: bind(rip_sock): Address already in use; giving up ?добавлено через 7 минут Таблица маршрутов вроде бы тоже в порядке: Нажмите здесь, чтобы увидеть текст полностью
Internet:
Destination Gateway Flags Refs Use Netif Expire 10.0.0.0/24 link#1 U 1 47 vr0 10.0.0.250 link#1 UHS 0 0 lo0 127.0.0.1 link#4 UH 0 2 lo0 192.168.1.0/24 link#2 U 0 9 rl0 192.168.1.100 link#2 UHS 0 0 lo0
__________________
Ищу братьев по разуму |
19.09.2010, 21:23 | # 2 |
Junior Member
Регистрация: 03.11.2003
Адрес: Гражданин Вселенной
Пол: Male
Сообщения: 134
|
Опытным путем установил:
пинг (например) с компьютера 10.0.0.1 на компьютер (например) 192.168.1.1 через этот злополучный шлюз тут-же начинает успешно проходить, как только запускаешь пинг в обратном порядке: с 192.168.1.1 на интерфейс vr0 роутера (10.0.0.250). Ну, и c разных других компов в обоих сетях - та-же история. добавлено через 10 минут Что бы это значило? Не понимаю.
__________________
Ищу братьев по разуму |
19.09.2010, 22:31 | # 3 |
NetMOD
Регистрация: 19.05.2003
Адрес: МосПодЛод - НачВод-АккОт
Сообщения: 2 376
|
Вот Вы эту директиву включили, так действуйте дальше, строго по спецификации rc.conf:
router_enable - (Vt bool) If set to "YES", run a routing daemon of some sort, based on the settings of router and router_flags. router - (Vt str) If router_enable is set to "YES", this is the name of the routing daemon to use. router_flags - (Vt str) If router_enable is set to "YES", these are the flags to pass to the routing daemon. У Вас ни директивы router, ни router_flags - не наблюдается. Или Вы приводите листинг rc.conf не полностью. Я, честно говоря, не понимаю для чего включалась директива router_enable? gateway_enable - достаточно. В общем на свежеустановленной FreeBSD Ваша задача решается вот так: rc.conf: ifconfig_vr0="inet 10.0.0.250 netmask 255.255.255.0" ifconfig_rl0="inet 192.168.1.100 netmask 255.255.255.0" gateway_enable="YES" Все должно работать.
__________________
Красная точка лазерного прицела на вашем лбу это тоже чья-то точка зрения... --------- Репутация – это то, без чего могут жить люди с характером
Последний раз редактировалось FantomIL; 19.09.2010 в 22:41. Причина: АшиПки |
19.09.2010, 23:55 | # 4 |
Junior Member
Регистрация: 03.11.2003
Адрес: Гражданин Вселенной
Пол: Male
Сообщения: 134
|
Уточняю задачу
С компами наконец дошло - все начинает работать после настройки на клиентских машинах правильного маршрута в искомую подсеть.
Простите неразумного, за то, что преступно умолчал об еще одной части задачи - необходимо из сети 10.0.0.0 выходить в нет через ADSL модем 192.168.1.254. Директиву router_enable="YES" включил, т.к. полагал, что она задействует нечто вроде NAT... и будет счастье Виноват, ошибся - модем-то "не знает" какой маршрут в другую подсеть. Какой в этом варианте должен быть rc.config - подскажите пожалуйста. Какие router_flags там должны быть?
__________________
Ищу братьев по разуму Последний раз редактировалось Shura_HI; 20.09.2010 в 00:01. |
20.09.2010, 00:12 | # 5 |
NetMOD
Регистрация: 19.05.2003
Адрес: МосПодЛод - НачВод-АккОт
Сообщения: 2 376
|
Shura_HI,
Или я вас не понимаю, или Вы не понимаете что такое НАТ. Чтобы подсеть 10.0.0.0 выходила в нет через 192.168.1.254 надо в качестве шлюза по умолчанию на хостах этой подсети указать адрес 10.0.0.250, а на FreeBSD шлюзом по умолчанию должен выступать адрес 192.168.1.254. И именно хост с этим адресом и должен обеспечивать трансляцию адресов. И никаких флагов не надо. Если вы хотите, чтобы трансляцию адресов обеспечивала FreeBSD, то ставьте третью сетевуху, ADSL модем в режим through, настраивайте на FreeBSD звонилку (mpd - одна из лучших ИМХО), а затем настраивайте то, что трансляцией заниматься будет (я предпочитаю PF - это еще и мощнейший файрволл, но если хотите, то можете с natd или с ipnat поизвращаться). Но флагов все равно не надо. Вот rc.conf с машины, которая раздает нет через НАТ (звонит mpd и pf раздает нет через НАТ): # Company rc.conf configuration amd_enable="YES" gateway_enable="YES" inetd_enable="YES" cloned_interface="ng0" pf_enable="YES" pf_rules="/etc/pf.conf" pflog_enable="YES" hostname="gate.company.co.il" ifconfig_re0="10.0.0.1/24" ifconfig_rl0="192.168.10.1/24" syslogd_flags="-s -c" mpd_enable="YES" keymap="us.iso" linux_enable="YES" usbd_enable="YES" rpcbind_enable="YES" Почитайте по настройку маршрутизатора здесь: http://www.opennet.ru/base/net/freebsd_gw.txt.html И про директивы rc.conf здесь: http://nixdoc.net/man-pages/FreeBSD/rc.conf.5.html
__________________
Красная точка лазерного прицела на вашем лбу это тоже чья-то точка зрения... --------- Репутация – это то, без чего могут жить люди с характером
Последний раз редактировалось FantomIL; 20.09.2010 в 00:25. |
20.09.2010, 01:36 | # 6 | |
Junior Member
Регистрация: 03.11.2003
Адрес: Гражданин Вселенной
Пол: Male
Сообщения: 134
|
Туман рассеивается
То что у меня в голове туман на тему НАТ и маршрутизации это само-собой понятно. Как раз эту статью на OpenNet, а также другую, похожую, прочитал еще до установки FreeBSD.
Проблема в том, в Win2003 при наличии аналогичной инструкции (например такой) и все того-же (или даже большего на тот момент ) тумана в голове все замечательно работает, то здесь это "не прокатывает" - надо досконально понимать что делаешь. Это для меня вобщем-то открытие Вобщем "туман" понемногу рассеивается, спасибо. Впрочем, тот факт что: Цитата:
Никаких наворотов со звонилками в данном случае не нужно - модем является роутером. Теперь не понимаю пожалуй только одно - как модем будет возвращать пакеты, тот-же ICMP (а они и не возвращаются) когда у него нету маршрута на сеть 10.0.0.0 ? Как ему объяснить сие?
__________________
Ищу братьев по разуму Последний раз редактировалось Shura_HI; 20.09.2010 в 01:45. Причина: Или нужно что-то еще? |
|
20.09.2010, 20:18 | # 7 | |
NetMOD
Регистрация: 19.05.2003
Адрес: МосПодЛод - НачВод-АккОт
Сообщения: 2 376
|
Цитата:
Вообще говоря, Ваша задача решается тремя способами: 1. Самый "черезжопный": FreeBSD выступает в роли маршрутизатора с трансляцией адресов из сети 10.0.0.0/32 в сеть 192.168.1.0/32. В этом случае man ipnat или man pf и читаем до полного просветления. Почему этот способ самый "черезжопный" Вы спросите? Потому что Вам, как сисадмину наверняка иногда захочется проверить что происходит в этих подсетях. А вся активность из подсети 10.0.0.0/32 в подсети 192.168.1.0/32 в этом случае будет выглядеть как один единственный адрес одного из интерфейсов FreeBSD. А это в свою очередь значит, что придется логировать все подряд на FreeBSD и хранить эти логи и сопоставлять их потом. В общем "лишняя" работа. 2. Самый "безгимморный": Ничего особо делать не надо. Все, как есть у Вас сейчас, только надо модему дописать в таблицу маршрутизации дополнительный статический маршрут на сеть 10.0.0.0/32 (я еще не встречал АДСЛ-модема, где этого нельзя было сделать). 3. Самый "правильный" (я бы сделал именно так): Ставим в FreeBSD дополнительный сетевой адаптер. Подключаем к нему модем. Если лень читать мануалы и настраивать mpd - настраиваем звонилку на модеме, а во FreeBSD делаем НАТ с подсетей 10.0.0.0/32 и 192.168.1.0/32 на подсеть, где будет стоять модем и настраиваем маршрутизацию между подсетями 10.0.0.0/32 и 192.168.1.0/32. НАТ настраиваем тем, чем душе угодно и идеологически ближе. Я предпочитаю PF (поскольку это еще один из самых мощных файрволлов и потому что язык файлов конфигурации очень прост и интуитивно понятен). Выбор, как говорится, за Вами.
__________________
Красная точка лазерного прицела на вашем лбу это тоже чья-то точка зрения... --------- Репутация – это то, без чего могут жить люди с характером
Последний раз редактировалось FantomIL; 20.09.2010 в 20:46. |
|
21.09.2010, 02:13 | # 8 |
Junior Member
Регистрация: 03.11.2003
Адрес: Гражданин Вселенной
Пол: Male
Сообщения: 134
|
Ага: еще немного просветлело!
Мне тоже вариант №3 больше нравится.
Только вот чем НАТ сделать - еще не решил. Пока читал только про ipw... Иду читать про PF... А может тогда еще и Squid ко всему этому "прикрутить"? Для оптимизации, контроля использования интернет (есть такое желание - на перспективу) и т.п. Судя по отзывам и описаниям на opennet.ru и lissyara.su штука мощная и примочек для анализа много. А НАТ тогда к нему все равно нужен будет? Или не обязательно, раз это прокси? По условиям задачи он даже не обязан быть "прозрачным".
__________________
Ищу братьев по разуму |
25.09.2010, 21:19 | # 9 |
NetMOD
Регистрация: 19.05.2003
Адрес: МосПодЛод - НачВод-АккОт
Сообщения: 2 376
|
Shura_HI, прошу прощения за долгое молчание - был в отпуске .
НАТ Вам нужен в случае, если вы выпускаете всю приватную подсеть через один "легальный" адрес. Squid в этом случае может выступать кэширующим прокси (для ускорения серфинга и экономии трафика) а, также, средством контроля пользователей и приложений. Штука действительно мощная и, пожалуй, безальтернативная. А прозрачный он будет или нет - решать Вам.
__________________
Красная точка лазерного прицела на вашем лбу это тоже чья-то точка зрения... --------- Репутация – это то, без чего могут жить люди с характером
|
26.09.2010, 02:28 | # 10 | |
Junior Member
Регистрация: 03.11.2003
Адрес: Гражданин Вселенной
Пол: Male
Сообщения: 134
|
Цитата:
Вместо этого поставил (только что закончил) SQUID с веб-интерфейсом SAMS как указано в этом руководстве. Пришлось почитать также статьи на opennet.ru, handbook, и другие. Вобщем на начальное освоение самой ОС + закачка новых версий через ports + решение проблем (то порты не обновляются, то Apache не запускается) ушла неделя (по неск. часов в день) и еще предстоит некоторая настройка-отладка в реальных боевых условиях... Теперь остается убедится, что это все заработает стабильно и без зависаний и глюков, какие есть на Win2K3, которая сейчас раздает инет -- и будет счастье P.S. А неплохой FAQ получился на тему "как сделать роутер на FreeBSD"?
__________________
Ищу братьев по разуму |
|
26.09.2010, 21:29 | # 11 | ||
NetMOD
Регистрация: 19.05.2003
Адрес: МосПодЛод - НачВод-АккОт
Сообщения: 2 376
|
Цитата:
У тебя, кстати, ПМ отключены на форуме, так что (да простят меня админы за личную переписку в топе) если хочешь получить ответ на ПМ, то включи их добавлено через 7 минут Цитата:
Вот если ты последовательно напишешь задачи, как ты их решал, да выложишь примеры конфигов, то тебе много людей спасибо скажут и работу эту оценят. И тогда будет просто отличный FAQ на эту тему и будет тебе, как говорится, респект и уважуха от многих форумчан
__________________
Красная точка лазерного прицела на вашем лбу это тоже чья-то точка зрения... --------- Репутация – это то, без чего могут жить люди с характером
|
||
27.09.2010, 03:08 | # 12 | ||
Junior Member
Регистрация: 03.11.2003
Адрес: Гражданин Вселенной
Пол: Male
Сообщения: 134
|
"Не так страшен черт" оказался :)
Цитата:
Уверен: многие хотят того-же, но просто боятся и не знают с чего начать, с какого конца подойти. Я точно знаю: любое обучение наиболее эффективно когда решаешь конкретную прикладную задачу и учишься при этом. Думается я еще не совсем "созрел" писать пошаговые инструкции для других: Цитата:
__________________
Ищу братьев по разуму |
||
Теги (метки) |
route |
|
|