после обновления до Ubuntu 10.10 настройки имени хоста перестали быть правильными. Содержимое / etc / hosts при каждом запуске изменяется на что-то вроде:
У вас есть идеи, как избавиться от первых двух строк? Простое редактирование их не поможет: после следующего перезапуска строки вернутся туда. Проблема в том, что теперь сеть разрешает мое имя хоста на 127.0.0.1 вместо 10.8.3.105:
~: $ ping mariusbotis PING mariusbotis (127.0.0.1) 56 (84) байт данных. 64 байта от mariusbotis (127.0.0.1): icmp_req = 1 ttl = 64 время = 0,022 мс 64 байта от mariusbotis (127.0.0.1): icmp_req = 2 ttl = 64 времени = 0,023 мс 64 байта от mariusbotis (127.0.0.1): icmp_req = 3 ttl = 64 времени = 0,021 мс 64 байта от mariusbotis (127.0.0.1): icmp_req = 4 ttl = 64 времени = 0,022 мс
2 ответа на вопрос
2
Tronic
Это на самом деле ожидаемое и предполагаемое поведение. Вы хотите, чтобы соединения с вашего собственного хоста проходили через петлевой интерфейс (интерфейс, связанный с вашим собственным хостом), который по умолчанию имеет IP 127.0.0.1 (в IPv4) и :: 1 (в IPv6). Если ваша внешняя сеть была недоступна, вы больше не могли бы получать доступ к службам на своем компьютере, включая, помимо прочего, X-сервер и другие демоны.
Обратите внимание, что файл / etc / hosts используется только на вашем компьютере. Если у вас есть файлы хостов (или DNS), настроенные на других хостах в вашей сети, вы все равно получите доступ к вашему компьютеру под именем «mariusbotis».
Может быть, вы могли бы уточнить, почему mariusbotis разрешается до 127.0.0.1 для вас.
Обратная петля (localhost) должна быть разрешена до 127.0.0.1. У меня есть приложение, которое просто не работает из-за этих настроек, я пока не уверен, почему. В любом случае, 127.xyz должен быть только адресом обратной связи.
botismarius 14 лет назад
0
Возможно, ваше приложение явно прослушивает только 10.8.3.105 и соответствующий сетевой интерфейс. Возможно, вы сможете изменить настройки и заставить его прослушивать все интерфейсы. Можете поделиться, какое приложение доставляет вам неприятности?
Tronic 14 лет назад
1
Мое приложение находит имя хоста, сопоставляет его с IP-адресом и прослушивает этот адрес (в моем случае приложение будет прослушивать 127.0.0.1, который явно не будет доступен с других компьютеров). К сожалению, я не могу изменить поведение приложения ...
botismarius 14 лет назад
0
Правильно ли я понимаю, что приложение автоматически находит имя хоста, а также выполняет поиск IP? Просто некоторые идеи: попробуйте удалить не всю строку, а только имя вашего хоста "mariusbotis" из первой строки. Если вы используете DHCP, это может переписать файл -> изменить на статический IP. Но опять же, я бы рассмотрел эти хаки / обходные пути ..
Tronic 14 лет назад
0
Что ж, очень странно, что по умолчанию Ubuntu делает это. Попробуйте на своей машине проверить связь с вашим именем хоста, 127.0.0.1 отвечает на запрос или другой IP? В случае, если что-то не работает, как ожидалось, решение, если таковое есть, не должно считаться хаком.
botismarius 14 лет назад
0
На всех машинах с Ubuntu, которые я только что проверил, он отвечает "from" `127.0.0.1`. Это действительно настройка по умолчанию. Но это не должно мешать любому приложению прослушивать другой интерфейс.
Tronic 14 лет назад
0
1
James Royer
Чтобы добавить к обсуждению, я только что обновил Ubuntu 10.04 до Ubuntu 10.10, и у меня возникла та же проблема, что и у botismarius. Я разрабатываю веб-приложения на своем ноутбуке и использую псевдонимы в файле / etc / hosts, которые используются apache2 в качестве имени виртуального хоста.
Файл / etc / hosts не был перезаписан в 10.04, но теперь он перезаписывается в 10.10. Я просто хочу вставить «test1.local» в конец строки localhost, но он теряется при каждой перезагрузке.
Обновление: я выяснил, как сохранить NetworkManager от перезаписи изменений. Не добавляйте псевдонимы в строку localhost, добавьте их в строку «127.0.1.1 your-machine-name».
Джейми
интересно. Интересно, почему в этом случае ping на ваше имя машины не отвечает из 127.0.1.1 (IP-адрес, который тоже из интерфейса обратной связи)
botismarius 14 лет назад
0
NetworkManager добавляет запись в верхней части файла с назначенным DHCP-адресом и связывает ее с именем хоста. Я предполагаю, что это подхватывает первое, которое это находит.
James Royer 14 лет назад
0