1

Тема: Создаем роутер

Доброго времени суток. Буду очень признателен, если подскажите дельным советом... Потмоу как найденные мануалы расчитаны на уверенного BSD пользователя, кем я пока не являюсь.

Что было:
Комп с Win XP SP3  на борту. 3 сетевые карты - 2 городские сети с выходом в инет (шлюзы 91.186.118.254 и 10.100.224.1). Третьей сетевушкой через свитч раздавал доступ друзьям, когда у меня сидели... В свойствах одно из "глобальных" подключений ставили "разрешить использовать эту сеть" Все было просто. Ниже маршруты для одновременной работы обеих сетей.
=============================================================
Постоянные маршруты:
  Сетевой адрес            Маска    Адрес шлюза      Метрика
      85.117.64.0    255.255.224.0   91.186.118.254      25
      213.128.0.0    255.255.224.0   91.186.118.254      25
      91.186.96.0    255.255.224.0   91.186.118.254      25
     95.129.144.0    255.255.248.0   91.186.118.254      25
      192.168.0.0      255.255.0.0   91.186.118.254      25
       172.19.0.0      255.255.0.0   91.186.118.254      25
         10.0.0.0        255.0.0.0     10.100.224.1      24
       172.22.0.0      255.255.0.0     10.100.224.1      24
      80.67.208.0    255.255.240.0     10.100.224.1      24

Собрал старенький комп, постаивл на него фряху 8.2. Хотел реализовать ту же схему... в итоге пляшу с бубном уже часов 10, нифига не выходит

в компе 3 сетевые карты, задача та же самая, две сетевые принимают/отправляют трафик в те же маршруты, третья сетевая смотрит в локальную сеть (16 портовый свич).

В винде, в настройках сети мы вводили все данные - ip, маска, шлюз, днс. Нужно было только играться со шлюзом.

Во фряхе не могу понять куда шлюз вписывать, в rc.conf вносится только дефолтный, а при конфигурации обеих сетей через sysinstall настройки перебивают друг друга.

Текущее состояние rc.conf

# -- sysinstall generated deltas -- # Tue Jan  1 00:06:55 2002
# Created: Tue Jan  1 00:06:55 2002
# Enable network daemons for user convenience.
# Please make all changes to this file, not to /etc/defaults/rc.conf.
# This file now contains just the overrides from /etc/defaults/rc.conf.
keymap="ru.koi8-r"
sshd_enable="YES"
ftpd_enable="YES"
ftpd_flags="-DM4"
sshd_flags="-4"
ifconfig_rl0="inet 192.168.0.1  netmask 255.255.255.0"
#ifconfig_rl1_alias0="ether 00:1b:b9:e8:0b:cb"
#ifconfig_rl1="DHCP"
ifconfig_rl2="inet 10.100.224.*** netmask 255.255.224.0"
defaultrouter="10.100.224.1"
gateway_enable="YES"
natd_interface="rl0"
hostname="FreeBSD.local"
dhcpd_enable="NO"
dhcpd_flags="-q"

Сеть со шлюзом 91.186.118.254 раздается по DHCP (на прошлом компе сетевая для этого интерфейса была встроена, поэтмоу приходится подменять мак)
Вторую сеть шлюз 10.100.224.1 вписываю статичесски.

В resolv.conf вписываю оба dnsa, но всегда остается только один...

Я так и не понял каким образом (ведь шлюзы заменяются и толком нигде не прописаны) комп с фряой видит обе сети и знает через какой шлюз пускать пакеты
PING norcom.ru (80.67.208.179): 56 data bytes
64 bytes from 80.67.208.179: icmp_seq=0 ttl=59 time=1.528 ms
64 bytes from 80.67.208.179: icmp_seq=1 ttl=59 time=1.451 ms
64 bytes from 80.67.208.179: icmp_seq=2 ttl=59 time=1.376 ms

PING kanal7.ru (85.117.95.241): 56 data bytes
64 bytes from 85.117.95.241: icmp_seq=0 ttl=50 time=1086.396 ms
64 bytes from 85.117.95.241: icmp_seq=1 ttl=50 time=1085.260 ms
64 bytes from 85.117.95.241: icmp_seq=2 ttl=50 time=1088.617 ms

(значения какие то странные time=1.528 ms и time=1086.396 ms)

НО, со стационарника с виндой (rl1) пинги не доходят совершенно. В настройках ip с FreeBSD указан как шлюз, смена ДНСов ничего не дает.

Отредактировано kukk (12-03-2012 04:59:51)

2

Re: Создаем роутер

1) уже вышла фря 9.0
2) у тебя проблема с NAT. Копай в эту сторону (natd_interface="rl0" есть, а natd_enable="yes" не вижу)
3) Почитай про pfSense, это готовое решение, делающее из компа роутер.
4) ifconfig_rl2="inet 10.100.224.*** netmask 255.255.224.0" - ты где такую запись ip адреса нашел?

Отредактировано E_gorka (12-03-2012 10:10:14)

3

Re: Создаем роутер

по поводу маршрутизации читаем https://www.freebsd.org/doc/ru_RU.KOI8-R … uting.html
А настроек NAT вообще не видно, ну кроме названия интерфейса

4

Re: Создаем роутер

E_gorka
возможно ли сохранить текущую конфигурацию фряхи и перейти на более свежую версию с текущими настройками? Поднимал ftp, dhcp и еще была попытка установить Zabbix... который дополнительно скачал MySQL, Apache, php и прочую нужную ему хрень

ifconfig_rl2="inet 10.100.224.*** - последним скрыл свой ip)

Остальное попробую!

crash
Вписать маршруты как это было реализовано на винде?

Отредактировано kukk (12-03-2012 10:25:14)

5

Re: Создаем роутер

Ты можешь сохранить конфигурационные файлы (rc.conf, например), но все программы нужно будет ставить с нуля.
Сначала с NAT разберись, а потом уже Zabbix трогай.
10.x.x.x и 192.168.x.x - пулы ip адресов для домашних сетей, скрывать эти ip нет смысла.
Маршруты пропишешь с помощью NAT

Отредактировано E_gorka (12-03-2012 10:50:41)

6

Re: Создаем роутер

решил пойти первым путем, через ipfw. Пересобрал ядро, так же был изменен ip на машине с фряхой.
Пытаюсь подконектится по ssh, на фряхе вылазит -
error: PAM authentication error for illegal user *** from 192.168.0.190

после смены ip вылазила вылало сообщение что доступ по ssh временно разрешен, после установки ядра совсем не пускает

В ядро добавил

options IPFIREWALL
options IPFIREWALL_VERBOSE_LIMIT=100
options IPDIVERT


воспользовался adduser, добавил себя по новой Смог войти

Добавлено: 15-03-2012 02:55:26

Подскажите в каком направлении гуглить...

У меня есть 3 адреса DNS серверов
85.117.95.*** относится к одной сети (kanal7.ru)
80.67.208.***, 80.67.208.*** (norcom.ru) - к другой. Как должен выглядеть мой resolv.conf? Обязательны ли поля search или можно обойтись только nameserver с адресами DNSов?

Сейчас НАТ настроил через один интерфейс. На фряхе defaultrouter указываю шлюз одиной сети, на машине во внутренней меняю адрес DNSa на адрес этой сети. Работает, но, как быть если нужно иметь доступ к обеим сетям и обоим DNSam? Нужно ли подымать свой DNS на фряхе, что бы раздавать его во внутренню сеть? Или имеется другой способ? Как это реализовать не представляю, но хотя бы в теории, дальше буду гуглить.

Еще вопрос по defaultrouter. Он тоже один указываетя по дефолту, а у меня два... Можно как то указать их? И метрикой приоритет выставить?]

Немного побаловался на винде, есть и смысл пробовать сетевой мост?]
В конечном результате хочу получить
2 WAN сети с доступом в инет - машина с FreeBSD (с картой WiFi) - домашняя сеть по ethernet, домашняя сеть по wi fi

Отредактировано kukk (15-03-2012 03:21:55)

7

Re: Создаем роутер

kukk пишет:

Обязательны ли поля search или можно обойтись только nameserver с адресами DNSов?

можно только nameserver
Про маршрутизацию я вам дал ссылку. Это конечно ваше дело пользоваться ею или нет, но если вам ответ нужен то почитайте.
А по поводу двух интернетов, то наверное хочется типа балансировки, то в инете куча информации по данном поводу

8

Re: Создаем роутер

crash
Не совсем... Это две разные локальные сети со своими внутренними ресурсами. Их две для того что бы иметь доступ ко всем внутренним ресурсам сети. Интернет использую только в одной из них.
Спасибо! Буду тестить

9

Re: Создаем роутер

Если вы используете интернет только в одной сети, то я вообще не вижу проблем. Вы ведь мою ссылку не читали?
Допустим, что в инет мы ходим через провайдера, который по dhcp выдает адрес и маршрут по-умолчанию, значит нам надо прописать маршрут в оставшиеся сети: 10.0.0.0/8, 172.22.0.0/16, 80.67.208.0/28 через 10.100.224.1

static_routes="net1 net2 net3"
route_net1="-net 10.0.0.0/8 10.100.224.1 "
route_net2="-net 172.22.0.0/16 10.100.224.1 "
route_net3="-net 80.67.208.0/28 10.100.224.1 "

Если же провайдер, через которого выходите в инет, дал вам данные, чотбы вбить статически, то вам просто надо прописать defaultrouter

10

Re: Создаем роутер

crash
Я читал вашу ссылку... Но не разобрался в некоторых вещах
natd_interface="rl0" - сдесь мы указываем интерфейсы, которые будут НАТиться. Возможно ли указать несколько интерфейсов?
В общей сумме у меня есть 3 DNSа. 2 от одной сети, 1 от другой. На машине в локальной сети какой ДНС мне вносить? Все? В какой последовательности?

Картинки:
в rc,conf строки
defaultrouter="10.100.224.1"
natd_interface="rl1"
natd_interface="rl2"

resolf.conf
nameserver 80.67.208.182
nameserver 85.117.95.1
nameserver 80.67.208.184

Делаем трассировку до kanal7.ru - лезет через 10.100.224.1 и дальше через инет. Вбиваем маршрут через шлюз 91.186.118.254, трассируем - пакеты летят через внутреннюю сеть - то что нужно
На верхнем окне - окно на локальной машине. Первая трассировка до добавления маршрута, (DNS пре-ый - 80.67.208.182, аль-ый 85.117.95.1) (лезет через инет),
После добавления маршрута
вторая (DNS пре-ый - 80.67.208.182, аль-ый 85.117.95.1),
третья (DNS пре-ый - 85.117.95.1, аль-ый 80.67.208.182 )

Отредактировано kukk (17-03-2012 23:13:09)

Post's attachments

error.JPG
error.JPG 108.9 Кб, файл не был скачан. 

You don't have the permssions to download the attachments of this post.

11

Re: Создаем роутер

Если вы указали маршрут по-умолчанию через другого провайдера, то естественно вы пойдете в инет по другому маршруту, по маршруту другого провайдера.

12

Re: Создаем роутер

crash
Мы друг друга не понимаем... Все равно спасибо

13

Re: Создаем роутер

Видимо не понимаем.

14

Re: Создаем роутер

Теперь пробую pf, только результат то же... Не понимаю как направить определенные диапозоны по определенному интерфейсу, и что бы это все НАТилось ((

15

Re: Создаем роутер

kukk пишет:

crash
Это две разные локальные сети со своими внутренними ресурсами. Их две для того что бы иметь доступ ко всем внутренним ресурсам сети. Интернет использую только в одной из них.

Настраиваете НАТ любым способом. В качестве defaultrouter указываете ту сеть из которой вам нужен интернет. В resolv.conf указываете все dns сервера которые вам нужны. В НАТ пишете правило, что трафик №1 (по айпишникам, по протоколам, по вам известным параметрам) направлять в сеть №1 все остальное в сеть №2.

Идея ясна?

Фаервол будет обеспечивать НАТ и маршрутизацию.

Отредактировано E_gorka (29-03-2012 12:25:15)

16

Re: Создаем роутер

Нужно ли вписывать статичесски маршруты в rc.conf если мы используем для маршрутиризации и НАТа pf?


if_norcom="rl2"
gw_norcom="10.100.224.1"

if_kanal7="rl1"
gw_kanal7="91.186.118.254"

lan="rl0"

wifi="wlan0"

nat on $if_norcom proto { tcp udp icmp } from $wifi:network to any -> ($if_norcom)
nat on $if_norcom proto { tcp udp icmp } from $lan:network to any -> ($if_norcom)

#pass out quick on $if_norcom route-to($if_kanal7 $gw_kanal7) from ($if_kanal7) to any keep state

#pass out route-to ($if_norcom $gw_norcom) inet from ($if_norcom)
#pass out route-to ($if_kanal7 $gw_kanal7) inet from ($if_kanal7)
#rdr on $ proto from 213.128.0.0/32 to any -> ($rl1)

#pass out route-to ($if_norcom $gw_norcom) from ($if_kanal7) to !(self:network) keep state
#pass out route-to ($if_kanal7 $gw_kanal7) from ($if_norcom) to !(self:network) keep state

#pass in on $if_norcom reply-to ($if_norcom $gw_norcom) proto tcp flags S/SA tagged if_norcom keep state
#pass in on $if_kanal7 reply-to ($if_kanal7 $gw_kanal7) proto tcp flags S/SA tagged if_kanal7 keep state

Пробовал так. Закоменченые строки не работают вообще, либо результата не видно

Отредактировано kukk (31-03-2012 06:18:31)

17

Re: Создаем роутер

kukk пишет:

Нужно ли вписывать статичесски маршруты в rc.conf если мы используем для маршрутиризации и НАТа pf?

Ответ в предыдущем моем сообщении.

kukk пишет:

Закоменченые строки не работают вообще...

А вы чего ожидали?

18

Re: Создаем роутер

E_gorka
Помощи жду, как ни странно. Поиском пользоваться умею, и гуглить тоже. Но разобраться в синтаксисе новой для меня ОС не получается

19

Re: Создаем роутер

Уважаемый, либо вы разбираетесь в системе, изучаете ее через свои глупые ошибки, недельные медитации над конфиг файлом, криком "эврика" пол третьего ночи итд. Либо вы можете сделать нечто, что будет работать, но вы не будете знать как оно работает. Да, лишняя строчка в резюме, но по факту - поверхностное знание.
Если хотите первый вариант - только время и гугл. Если второй - зачем фря, если работает под виндой?

Вы понимаете что такое маршрутизация?
Вы понимаете чем отличается NAT от Proxy?
Вы прочитали мануал по Packet Filter ДВАЖДЫ от корки до корки?

*nix системы требуют понимания. Это философия. Либо начинайте понимать, либо бросьте.

1) в строках конфиг файлов все, что после # - комментарий, а значит системой не воспринимается.
2) Определитесь какую помощь вы ждете - чтобы указали путь или сделали за вас?

20

Re: Создаем роутер

E_gorka
Они поэтому и закоменчены, потому как пробовал их, а результата небыло...

Винду как шлюз настроить не пытался, хотя все чаще задумываюсь что бы опробовать этот вариант