4

Я пытаюсь добиться того, что в основном было задано в этом вопросе:

https://superuser.com/questions/403662/bind-dns-settings-on-mac-os-x-lion-errors-in-zone-file

например, мне нужно настроить домен верхнего уровня .local (или любой другой), чтобы я мог привязать к нему виртуальные хосты в apache, чтобы другие компьютеры в сети (или в моем случае на виртуальных машинах) могли подключаться к серверу, используя определенные доменные имена. Итак, у меня есть http://moodle19.local/ и http://moodle22.local:8888/ и http://somesite.local:82/ и так далее, все они работают на одном и том же экземпляре apache в mamp. Похоже, что адрес Apple «Tims-MacBook-Air.local» не позволяет мне запускать порты или другие имена сайтов для сайтов, которые привязаны к определенному имени и так далее.

Читая о том, как это сделать, я натолкнулся на инструкции, которые предлагают использовать BIND для настройки локального DNS-сервера на моем Mac (Lion), и у меня нет выделенного сервера. Я пытаюсь следовать инструкциям, которые дают мне знать, какие команды вводить, потому что я безнадежен в этом из командной строки.

http://www.macshadows.com/kb/index.php?title=How_To:_Enable_BIND_-_Mac_OS_X's_Built-in_DNS_Server

Я дохожу до части, которая говорит, что If both ports are not the same, it's best to change one before starting BIND . Я выполнил эти команды:

bash-3.2# more /etc/rndc.conf | grep '\-port'
    default-port 953;
bash-3.2# more /etc/named.conf | grep 'inet.*\?port'
    inet 127.0.0.1 port 54 allow {any;}
bash-3.2# 

Так что мне кажется, что у меня разные порты. Я не уверен, что я должен изменить это на ... Например, я предполагаю, что named.conf является авторитетом в этом, потому что он существовал до того, как я начал, тогда как rndc.conf не существовал. Таким образом, он, кажется, прослушивает порт 54, тогда как rndc.conf имеет порт 953 (являющийся какой-то старшей версией 53, которую я смутно помню для DNS)

Предполагая, что я поступаю правильно, я изменил rndc.conf на порт 54.

Затем я добавил org.isc.name в launchctl и попытался выполнить его, используя указанные команды

bash-3.2# launchctl load -w /System/Library/LaunchDaemons/org.isc.named.plist 
bash-3.2# echo "launchctl start org.isc.named" >> /etc/launchd.conf
bash-3.2# /usr/bin/named
bash: /usr/bin/named: No such file or directory

Это проблема? Я не знаю, что я только что сделал, но "named", по-видимому, отсутствует в /usr /bin на моем Mac. Я не знаю, как его найти. Выполнение launchctl start org.isc.named не выдало ошибку. Если я выполняю ps -x (или -A), я вижу что-то с именем /usr/sbin/named -f что, как я полагаю, является тем же. Это просто опечатка в этом документе или потому что это для старой версии OSX? Я выполнил /usr/sbin/named и теперь дважды вижу его в списке ps -A . Опять же, не знаю, если это то, что я должен увидеть.

Далее по списку при добавлении файла локальной зоны есть инструкция по добавлению адреса электронной почты. Copy and paste the following configuration, replacing user.domain.com with your e-mail address (changing the @ to a period as shown). На моем (например, моем реальном адресе электронной почты) есть точка (.) ... Это будет проблемой - или я могу использовать поддельное письмо здесь? В инструкции вроде бы не указывается и эта утилита

http://pgl.yoyo.org/as/bind-zone-file-creator.php

также не помог определить причину адреса электронной почты. Я предположил, что адрес электронной почты является просто токеном и вставил ненастоящий, и оставил файл в соответствии с примером (здесь), так как он покрывает меня для локального tld, который я и хочу (я тоже рад иметь что-то еще, такое как banana.fish.moocow, как было предложено здесь - до тех пор, пока он статический и не IP-адрес, мне все равно - да, мой IP назначен динамически, и нет, я ничего не могу с этим поделать ).

Поэтому я попытался перезагрузить rndc, чтобы у него была новая запись. Вот выходные данные команд restart, stop и flush, за которыми следует пинг, указывающий, что он НЕ работает.

bash-3.2# rndc reload
WARNING: key file (/private/etc/rndc.key) exists, but using default configuration file (/private/etc/rndc.conf)
server reload successful
bash-3.2# rndc stop
WARNING: key file (/private/etc/rndc.key) exists, but using default configuration file (/private/etc/rndc.conf)
bash-3.2# rndc flush
WARNING: key file (/private/etc/rndc.key) exists, but using default configuration file (/private/etc/rndc.conf)
bash-3.2# rndc reload
WARNING: key file (/private/etc/rndc.key) exists, but using default configuration file (/private/etc/rndc.conf)
server reload successful
bash-3.2# ping webapp.local
ping: cannot resolve webapp.local: Unknown host
bash-3.2# 

Ну, я не знаю, что делать дальше ... Это не работает, я не знаю, как это исправить.

Я читал другие предложения, такие как этот, но не смог понять, о чем они говорили. "Мы использовали продукт X" не дает мне никаких указаний на то, что я должен делать. Я посмотрел на страницу http://www.thekelleys.org.uk/dnsmasq/doc.html но почесал голову, потому что предполагал, что я знаю больше, чем знаю (например, как мне его запустить, если я напуган командная строка?), как ведут себя все пользователи Linux.

Похоже, что Apple тоже ведет себя в противоположном направлении. вот ссылка, которая говорит мне, что мой администратор будет знать, что делать с этими полями. Я чертов администратор, и нет, я не Можно также опубликовать статью с надписью «Поставьте галочку, которая еще больше запутает вас». ворчать

пс. Извиняюсь за ссылки, не являющиеся ссылками, очевидно, я мог бы быть спам-ботом, который знает, как взломать нерушимую reCaptcha, разве это не было бы замечательно.

1 ответ1

0

Я пришел сюда из-за вашей ошибки:

WARNING: key file (/private/etc/rndc.key) exists, but using default configuration file (/private/etc/rndc.conf)

Чтобы решить эту проблему, я сделал следующее:

  1. Создайте /usr/local/etc/
  2. Переместите /etc/rndc.key в /usr/local/etc/
  3. Обновите /etc/rndc.conf и /etc/named.conf чтобы включить /usr/local/etc/rndc.key
  4. rndc reload

В командах это выглядит так:

sudo -s
mkdir -p /usr/local/etc
mv /etc/rndc.key /usr/local/etc
vi /etc/rndc.conf
vi /etc/named.conf
rndc reload

cat /etc/rndc.conf выдает:

# Start of rndc.conf
include "/usr/local/etc/rndc.key";

options {
...

cat /etc/named.conf выдает:

//
// Include keys file
//
include "/usr/local/etc/rndc.key";

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .