nslookup возвращает 192.168.1.1 для www.google.com

У меня есть машина с двумя сетевыми интерфейсами eth0 и eth1 . Я хочу использовать интерфейс eth0 для Интернета и eth1 для связи во внутренней сети, которая подключена к внутреннему маршрутизатору.

Интернет-соединение работает нормально, если включен только интерфейс eth0 , а интерфейс eth1 не работает. Таблица маршрутизации выглядит так, как показано ниже, когда eth1 не работает.

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.24.140.1     0.0.0.0         UG    0      0        0 eth0
10.24.140.0     0.0.0.0         255.255.252.0   U     1      0        0 eth0

Когда я поднимаю интерфейс eth1 , в таблицу маршрутизации добавляется запись маршрутизации по умолчанию с пунктом назначения как ] 192.168.1.0 и шлюз как 0.0.0.0 , и это создает проблемы.

Теперь всякий раз, когда я пытаюсь проверить связь с общедоступным доменом, например www.google.com , результаты проверки всегда показывают, что система пыталась проверить связь 192.168.1.1 . Даже «nslookup» для www.google.com дает IP-адрес домена как 192.168.1.1 .

Я не понимаю, почему nslookup дает сбой, просто поднимая eth1 . Я больше не могу получить доступ к Интернету, и все идет наперекосяк.

Я попытался удалить запись маршрутизации для 192.168.1.0 , но это не помогло. Простая перезагрузка машины снова добавит запись маршрутизации, и все снова будет в беспорядочной ситуации.

Пожалуйста, предложите, что я могу попробовать, чтобы обе сети на моей машине работали нормально.

-1
задан 5 May 2017 в 19:05
1 ответ

Вы видите один симптом (поиск DNS возвращает неправильный IP-адрес), но путаете это с маршрутизацией. Сама маршрутизация не имеет ничего общего с вашей проблемой, поиск DNS имеет. Тот факт, что включение второй сетевой карты означает, что что-то во второй сети вызывает это.

Что вам нужно сделать, так это выяснить, что происходит с вашими поисками в DNS. Где-то у вас есть DNS-сервер, возвращающий 192.168.0.1 для всех ваших запросов.

Кроме того, nslookup на самом деле не лучший инструмент для работы в Linux. Вам следует попробовать использовать dig . dig + trace google.com предоставит вам полную разбивку запросов, которые он делает для разрешения IP-адреса, и может показать вам, где что-то идет не так.

Кроме того, вы можете запустите pcap и проанализируйте свой захват в чем-то вроде Wireshark. Это покажет вам точные пакеты, которые передаются по сети, и может дать вам некоторое представление о том, что происходит.

2
ответ дан 5 December 2019 в 19:22

Теги

Похожие вопросы