Я пытаюсь добиться того, что в основном было задано в этом вопросе:
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, разве это не было бы замечательно.