Я пытаюсь перенаправить существующий веб-адрес на удаленную машину в моей подсети. Чтобы сделать это, я помещал следующее в/и т.д./хосты/etc/hosts игнорируется в mac El Capitan (10.11.5)
192.168.1.249 holub.com
и очистить кэш DNS с
Суды dscacheutil -flushcache; Суд killall -HUP mDNSResponder
Однако, когда я ping holub.com (самый надежный способ, которым я знаю, чтобы увидеть, как адрес фактически разрешен), я e - настоящий веб-адрес (204.13.10.74), а не тот, который указан в/etc/hosts (192.168.1.249). Интересно, что утилита mysqladmin не правильно разрешает адрес, но браузер Chrome правильно разрешает адрес. Я предполагаю, что Chrome имеет своеобразное внутреннее решение.
В общем, похоже, что/etc/hosts используется после фактического поиска DNS, а не раньше, как и должно быть, поэтому внешний адрес не является переопределяемым.
Я попытался использовать различные эквиваленты IPv6 для моего локального адреса (0: 0: 0: 0: 0: ffff: c0a8: 01f9 :: ffff: 192.168.1.249 :: 192.168.1.249), но это не означает, t помочь. Перезагрузка (а не очистка кеша) тоже не помогает.
Я нашел одно неудовлетворительное обходное решение. Если я отключить DNS reponder с
Суды launchctl выгрузить -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
затем/и т.д./хосты используются, но тогда я не может получить доступ в Интернет.
Если кто-то столкнулся с этой проблемой, мне бы хотелось узнать, есть ли обходной путь.
Убедитесь, что введенная запись правильно отформатирована: IP-адрес, за которым следует пробел или табуляция, а затем имя, а затем строка перевода в конце строки. Попробуйте распечатать файл hosts с помощью 'cat -vet/etc/hosts', чтобы сделать видимыми невидимые символы. Строка должна выглядеть так: «192.168.1.249^Iholub.com $» («^ I» - это вкладка, а «$» - строка) или «192.168.1.249 holub.com $». Если вы видите «^ M» (возврат каретки) непосредственно перед «$», у вас есть текст в формате DOS/Windows, и вам нужно удалить каретки (-ы). –
Гордон, спасибо, но все это правильно. Прямой файл ascii, созданный с помощью vim на mac (который по существу является BSD unix), поэтому никаких странных файлов Windows :-). Проблема идет глубже. – aholub
Помогает ли добавление 'order hosts, bind' в качестве первой строки в'/etc/resolv.conf'? –