У меня есть машина с двумя сетевыми интерфейсами 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
, но это не помогло. Простая перезагрузка машины снова добавит запись маршрутизации, и все снова будет в беспорядочной ситуации.
Пожалуйста, предложите, что я могу попробовать, чтобы обе сети на моей машине работали нормально.
Вы видите один симптом (поиск DNS возвращает неправильный IP-адрес), но путаете это с маршрутизацией. Сама маршрутизация не имеет ничего общего с вашей проблемой, поиск DNS имеет. Тот факт, что включение второй сетевой карты означает, что что-то во второй сети вызывает это.
Что вам нужно сделать, так это выяснить, что происходит с вашими поисками в DNS. Где-то у вас есть DNS-сервер, возвращающий 192.168.0.1
для всех ваших запросов.
Кроме того, nslookup
на самом деле не лучший инструмент для работы в Linux. Вам следует попробовать использовать dig
. dig + trace google.com
предоставит вам полную разбивку запросов, которые он делает для разрешения IP-адреса, и может показать вам, где что-то идет не так.
Кроме того, вы можете запустите pcap и проанализируйте свой захват в чем-то вроде Wireshark. Это покажет вам точные пакеты, которые передаются по сети, и может дать вам некоторое представление о том, что происходит.