Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > *NIX системы: Общие вопросы > Две сетевые карты - какая ответит на пинг?


Автор: burakov 14.8.2007, 22:55
Друзья,
Если в компе две сетевые карты с назначенными на них static IP
например,

ОДНА:
192.250.250.3 
255.255.255.0

и 

ВТОРАЯ:
192.168.1.2
255.255.255.0


И взять и с ЭТОГО же компа запустить пинг по ИМЕНИ.
Например, пусть у компа имя = admin

тогда 
ping admin


какой адрес ответит???
и от чего это зависит в unix - linux
какой сетевой интерфейс Linux посчитает ГЛАВНЫМ?

А может кто знает - как этот процесс реализован в WINDOWS.
А то собственно мне надо в WINDOWS сменить приоритет ответа (чтобы в ответ на пинг по ИМЕНИ отвечала вторая карта ). Но виндузятники молчат.

Подскажите пожалуйста. Очень надо!
Спасибо





Автор: ZeeLax 15.8.2007, 05:21
Куда резолвится у вас admin, тот интерфес вам и ответит. Чаще всего, локальная машина из записей файла hosts отрезолвит всё в адрес петлевого интерфейса - 127.0.0.1, так что тут вообще без разницы будет, сколько у вас там сетевух.

Автор: burakov 15.8.2007, 09:14
прописываю в файле
hosts (правда под WINDOWS) 
admin 192.250.250.3

пингую, а отвечает 192.168.1.2
:(


может конечно под linux  по другому :( ...

Автор: vintyara 15.8.2007, 12:26
burakov, а пингуешь с линуха smile ? если да - то ему положить на твой hosts (правда под WINDOWS) , потому что оно лезет в свой hosts =)

Автор: mrco 15.8.2007, 12:46
Цитата(burakov @  14.8.2007,  22:55 Найти цитируемый пост)
какой сетевой интерфейс Linux посчитает ГЛАВНЫМ?

В общем случае главным считается тот у которо номер ниже (eth0, ppp0).

Автор: giner 15.8.2007, 13:08
Пакеты будут идти согласно таблице роутинга:
route -n

Автор: ZeeLax 15.8.2007, 16:11
Цитата(mrco @  15.8.2007,  15:46 Найти цитируемый пост)
В общем случае главным считается тот у которо номер ниже (eth0, ppp0). 

бред.

Добавлено @ 16:13
Не сразу вас допонял. На пинг извне, как и писал giner, и виндоус и линукс ответят согласно таблице маршрутов.

Добавлено @ 16:17
Понятий "главный интерфейс", "приоритет ответа" не существует.
Пинг по имени, отличается от пинга по IP только налицием предшествующего запроса к системе разрешения имен ОС.

Автор: burakov 16.8.2007, 09:40

Цитата

Пинг по имени, отличается от пинга по IP только наличием предшествующего запроса к системе разрешения имен ОС.


Совершенно правильно...
Вопрос в том ...

1. В сетке (стоят одни WINDOWS) - DNS-сервер НЕ поднят. Т.е. не знаю... какая служба в WINDOWS связывает IP с именем компа, если нет DNS сервера и как на нее повлиять smile.
2. 
 Если пинговать этот вот комп с двумя сетевыми
из внутренней сетки 
192.250.250.0 
ping admin
то отвечает на это имя внутренняя карта с ip=192.250.250.3

Если пинговать c внешней сетки 192.168.1.0
ping admin
то отвечает соответственно внешняя сетевая с ip=192.168.1.2

Т.е. тут все правильно... сети работают и все нормально

3. А вот  Если пинговать "САМ-СЕБЯ", то отвечает
карта внешняя 192.168.1.2 , а я бы хотел, чтобы отвечала карта ВНУТРЕННЯЯ!!!

ПРописка в файле hosts строк типа
admin 192.250.250.3

НЕ помогает.

посмотрел route print? Вижу шлюз "по умолчанию" 192.168.1.1. Ну думаю в этом дело.
Меняю шлюз "по умолчанию" на внутренний адрес (192.250.250.5 - реально мой внутренней шлюз) 

НЕ ПОМОГАЕТ. ПРобую вообще убрать ШЛЮЗЫ и с одной и с другой сетевой.
Все равно САМ на СЕБЯ отвечает 192.168.1.2, вместо желаемого 192.250.250.3

пробовал обзывать в сетевом окружении карты типа eth0 и eth1, менял названия местами - НИЧЕГО...
(ну в windows я на это и НЕ надеялся)

Чего еще можно придумать?
Где на компе можно посмотреть таблицу соответствия 
ip адрес = имя компа ????

(по идее - это файл hosts, но на практике - не помогло!)

Автор: ZeeLax 16.8.2007, 17:14
Ага, значит я вас правильно понял.
Цитата(burakov @  16.8.2007,  12:40 Найти цитируемый пост)
admin 192.250.250.3

а
Код

192.250.250.3 admin

не пробовали? Так даже в комментариях написано.

Автор: bilbobagginz 19.8.2007, 21:34
давайте расставим все точки над ё.

имя компьютера привязывается к IP адресу. к ОПРЕДЕЛЕННОМУ IP адресу. делается это либо на каждом компьютере сети в его личном файле /etc/hosts ( в винде - C:\WINDOWS\System32\drivers\etc\hosts ), либо в сервере DNS.

сетевая карточка конфигурируется на как минимум 1 IP адрес.
поэтому ответ таков:
если в сети - централизованное управление именами, т.е. DNS настроено, и в нем есть запись, указывающая с "admin" на  "192.250.250.3", то при пинге ответ будет с той карты которая сконфигурирована на данном адресе.
весь механизм перевода с IP на имя и с имени на IP - называется resolving, резолвинг.
его можно настраивать с помощью нескольких элементов, но это уже отдельная тема.

если же это не централизовано, то возможна неразбериха: на одном компьютере можно указать, что admin - это адрес первой карты, а на другом - другой.

т.е. в данном случае возможен и ответ:
если в файле /etc/hosts только на компьютере, который вы сам себе назвали admin записано, каков его адрес, и в сети ни в одном компьютере не указано каков адрес admin в файле или dns, то при попытке запустит команду ping admin, будет ответ:
Код

ping: unknown host admin

(если вы на линуксе)
добавлю, что на практике делают как минимум 1 из:
  • настраивают в локалке днс
  • настраивают 1 общий файл /etc/hosts, и на него указывают (напр. посредством nfs), 
  • настраивают периодическую синхронизацию с файла-примера /etc/hosts (напр. посредством cvs/svn или rdist/scp )
и последнее.
у вас один адрес - маршрутизируемый, 192.250.х.х - т.е. "белый"/"внешний" адрес. вы случайно не ошиблись с этим ? если это внутренняя локальная сеть, то стоит использовать только внутренние сети и подсети из сегментов: 
  • 10.0.0.0/8
  • 172.16.0.0/12
  • 192.168.0.0/16
иначе могут возникнуть проблемы с маршрутизацией.

мир всем.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)