macOS Sierra(10.12.6)ホスト名コマンドに「.local」は追加されません。

macOS Sierra(10.12.6)ホスト名コマンドに「.local」は追加されません。

簡単に言うと:

私が知る限り、hostnameコマンドにはオプションがあります-f。マニュアルページから:

-f 精子の名前にドメイン情報を含めます。これがデフォルトの動作です。

これがデフォルトの動作であるため、印刷された名前にドメイン情報が含まれていませんMY-COMPUTER-NAME

追加情報:

共有設定で「コンピュータ名」を変更することはできません(図のように灰色で表示されます)。

共有設定では、コンピュータ名がHippotigrisに設定されており、次のメッセージが表示されます。 「ローカルネットワーク上のコンピュータからコンピュータにアクセスできます:LM-SJN-21001464

最初に私の「localhostname」も「Hippotigris」に設定されていましたが、この問題を発見したときに次のコマンドで得られた名前に変更しましたhostname

共有環境設定、ローカルホスト名の入力フィールドはLM-SJN-21001464に設定され、「.local」で終わり、灰色で表示されます。

私が見つけたこの記事タイトルは「ターミナルでMacホスト名またはコンピュータ名を設定する」ですが、これは問題が解決するのか悪化するのかわかりません。

私が達成したいこと:

私はNodeJSの組み込みdns.lookup機能をos.hostname組み込み機能と一緒に使用します。私の考えでは、この関数hostnameはコマンドが印刷するのと同じものを返すと思いますhostname(現在実行中の作業はまさにそれです)。私が実行したとき:

node -e "require('dns').lookup(require('os').hostname() + '.local', console.log)"

うまく動作し、ローカルネットワーク上のマイコンピュータのIPアドレスを印刷しますが、実行すると

node -e "require('dns').lookup(require('os').hostname(), console.log)"

エラーを記録します。getaddrinfo ENOTFOUND LM-SJN-21001464

周りに尋ねたらこのスクリプトはほとんどの人には機能しないようです.local。したがって、私のコンピュータの構成に関連していると推測されます。

ベストアンサー1

ありがとうTwitterのヘルプDNS設定の検索ドメインに「.local」を追加することで重要な問題を解決しましたがhostname(およびos.hostname)は、まだ「.local」が追加されていないホスト名を返します。

したがって、私が経験した問題に対する答えは次のとおりです。しかし、私が投稿した質問ではありません。何が起こっているのか、心配すべきかを理解したいと思います。

「ドメイン検索」を表示する DNS タブのネットワーク設定には「.local」が含まれます。

おすすめ記事