PDA

Показать полную графическую версию : Проблема с 2мя сетевыми адаптерами.


bogert
04-03-2009, 19:35
Здравствуйте.
Стоит система FreeBSD 7.1, установленно 2 сетевых адаптера.
Предпологается, что один смотрит в инет, другой в локалку.

Проблема вот в чем: когда включен адаптер, смотрящий в инет, всё ок, интернет работает, ДНС сервера пингуются.

Когда работают оба перестают пинговаться ДНС сервера провайдера и соответственно инет не работает. Шлюз пингуется.

Предполагаю, что доступ к ДНС серверам открыт лишь для его(провайдера) ИП-адресов, т.е. только для тех что он выдает. Когда включены оба адаптера, ФРЯ возможно [пытается слать запросы от имени адаптера смотрящего в локалку. Происходит это в силу, я предполагаю, что шлюз и локальная сеть имеют одинаковые маски и вообще "находятся рядом". В общем что там я рассказываю... смотрите сами:

ifconfig:

#смотрящий в сеть
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8<VLAN_MTU>
ether 00:50:cf:40:ee:bc
inet 10.134.151.50 netmask 0xfffffe00 broadcast 10.134.151.255
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active

#смотрящий в инет
re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=389b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
ether 00:18:37:01:f1:b1
inet 10.134.150.40 netmask 0xfffffe00 broadcast 10.134.150.255
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active

#итд
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> metric 0 mtu 1500
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000


Изменить архитектуру сети не могу, сделать нормальныее адреса локалки вроде 192.168... тоже не могу. Данная конструкция прекрасно функционирует в Винде. И функционировала во ФРЕ несколько дней назад. Но с тех пор как, я предполагаю, ввели эту авторизацию на ДНС серверах - работать перестало, к тому же ФРЯ переустанавливалась, может что-то настроено по-иному. Может чего и не заметил.

Забыл сказать это всё нужно, чтобы настроить НАТ.
-----------------------------------
/etc/resolv.conf:

domain host.ru
nameserver 195.60.60.240
nameserver 195.61.62.160

-----------------------------------
/etc/rc.conf:

inetd_enable="YES"
gateway_enable="YES"

ifconfig_rl0="inet 10.134.151.50 netmask 255.255.254.0" #в локалку
ifconfig_re0="inet 10.134.150.40 netmask 255.255.254.0 broadcast 10.134.150.255" #в инет
defaultrouter="10.134.150.1"
hostname="2.host.ru"
-----------------------------------

Подскажите как прописать Фре чтобы к ДНС серверам запросы шли от нужного адаптера, если эта возможная причина верна.

leonty
04-03-2009, 21:48
bogert, покажи таблицу маршрутизации netstat -rn

bogert
04-03-2009, 22:45
2# netstat -rn
Routing tables

Internet:
Destination Gateway Flags Refs Use Netif Expire
default 10.134.150.1 UGS 0 9 re0
10.134.150.0/23 link#2 UC 0 0 re0
10.134.150.1 00:12:cf:a7:3b:40 UHLW 2 0 re0 1088
10.134.150.235 00:19:db:c6:f3:ec UHLW 1 12 re0 1199
127.0.0.1 127.0.0.1 UH 0 0 lo0

leonty
04-03-2009, 23:21
bogert, это таблица в момент когда подключены обе сетевые или только одна?

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

bogert
04-03-2009, 23:40
Извините. Вот таблица, когда два адаптера:Routing tables

Internet:
Destination Gateway Flags Refs Use Netif Expire
default 10.134.150.1 UGS 0 85 rl0
10.134.150.0/23 link#1 UC 0 0 rl0
10.134.150.1 00:12:cf:a7:3b:40 UHLW 2 1 rl0 1004
10.134.150.66 00:0f:ea:61:51:75 UHLW 1 3 rl0 1175
10.134.150.168 00:01:6c:ec:62:7f UHLW 1 4 rl0 1041
10.134.151.243 00:1b:fc:de:56:3e UHLW 1 8 rl0 1171
127.0.0.1 127.0.0.1 UH 0 0 lo0

Полагаю, что необходимо самому прописать рут до ДНС серверов. Ибо именно они перестают пинговаться. С пингом до шлюза, повторюсь, все нормально.

leonty
05-03-2009, 00:38
Полагаю, что необходимо самому прописать рут до ДНС серверов. Ибо именно они перестают пинговаться. С пингом до шлюза, повторюсь, все нормально. »
У меня аналогичные мысли. Попробовать задать роут к днс серверу, и если прокатит, прописать его статически.

bogert
05-03-2009, 02:18
У меня аналогичные мысли. Попробовать задать роут к днс серверу, и если прокатит, прописать его статически. »

Да, всё так и есть. Только аналогичный результат я получил иным способом.
Взглянув на мой netstat -rn видно, что в колонке Netif везде фигурирует rl0, а должен быть re0.
Как я понял Фря сует в качестве адаптера в таблицу первый определившийся адаптер, которым стал неверный rl0.

Поменяв их местами в rc.conf
network_interfaces="re0 rl0"
Фря засунула в таблицы нужный re0 и всё заработало. Причем адаптер взял на себя все функции, включая лишние. Теперь перестал работать НАТ.

Как все же записать маршрут, где было бы явным образом указано использовать адаптер? Изучая man route я этого не нашел.

Telepuzik
05-03-2009, 10:14
bogert,
ifconfig_rl0="inet 10.134.151.50 netmask 255.255.254.0" #в локалку
ifconfig_re0="inet 10.134.150.40 netmask 255.255.254.0 broadcast 10.134.150.255" #в инет »
У вас оба интерфейса находятся в одной подсети 10.134.150.0/23, меняйте маску подсети на 255.255.255.0.

leonty
05-03-2009, 12:08
Изменить архитектуру сети не могу, сделать нормальныее адреса локалки вроде 192.168... тоже не могу. »

Telepuzik
05-03-2009, 13:31
Интересно а с чем связана не возможность поменять маску для локалки на 255.255.255.0.

Igor_I
05-03-2009, 14:59
http://www.subnetmask.info/
Может это чем поможет.
Вводим адрес 10.134.150.0
enter the required number of nodes/hosts per network = 512
Получается маска 255.255.254.0
Что означает
Network-------|----------------Hosts-----------------|-----Broadcast Address
-----------------|-------from------|------------to-------|
10.0.150.0____10.0.150.1____10.0.151.254____10.0.151.255

А если ввести enter the required number of nodes/hosts per network = 256, то получиться искомая маска.

bogert
05-03-2009, 15:02
Интересно а с чем связана не возможность поменять маску для локалки на 255.255.255.0. »

С маской локалки 255.255.255.0 нижестоящие компьютеры выйдут из подсети главного шлюза и им будет закрыт доступ к Сервисам.


Помогите! Как прописать маршрут, чтобы можно было указать какой адаптер использовать?
Или может быть это решается каким-то более грамотным способом?

Igor_I
05-03-2009, 15:40
Эту область я мало понимаю, но ведь интересно ...
То есть в локалке у компьютеров по 2 сетевых карты?

gf100
05-03-2009, 16:10
Можно подробнее: что стоит между "inet 10.134.150.40 netmask 0xfffffe00" и провайдером? В смысле, как это реализовано физически? (какие кабели и железки).

+ настройки сетевого подключения любой рабочей машины в сети.

bogert
05-03-2009, 19:52
Главной проблемы получилось избежать.
Хорошо подумав, сделал более грамотную топологию.

Возникла другая проблема.
Почему возникает ситуация когда компьютеры пингуют шлюз(мой серв с FreeBSD), пинга нет. Превышен предел ожидания. Если с сервака сделать пинг этого компа. Сразу появляется пинг на клиенте и связь функционирует нормально.

Что это такое происходит?

Igor_I
05-03-2009, 22:25
Хорошо подумав, сделал более грамотную топологию. »
Как?
Tracert не пробовал?
Постоянно путаю tracert и traceroute :)

bogert
06-03-2009, 20:29
Разобрался с пингом.
В arp таблицу клиента динамически вносился не мой МАК.

Видимо, в другой подсети уже существовал компьютер с таким же ИП как мой. А может и другая причина есть.




© OSzone.net 2001-2012