ホームLANネットワーク内のIPのエイリアス


23

192.168.1.1などのIPアドレスに読み取り可能な文字列エイリアスを割り当てることはできますか?たぶんこのようなもの:

192.168.1.1 -> router.home

または

192.168.1.22 -> printer.home

router.homeが外部のWebから到達可能である必要はありませんが、LAN内のみです。実際、外部のWebからアクセスできないようにする必要があります。

目標は、router.homeアドレスに応答するローカルDNSサーバーを持つことだと思います。そのようなエイリアスを作成する方法はありますか?

編集:Yamakajaの答えはうまくいきますが、LAN内のすべてのコンピューターでhostsファイルを変更する必要があります。代わりにローカルDNSルックアップをホームルーターで実行できますか?それは多くの手作業をスキップします。


2
たとえば、Asusルーターを使用し、router.asus.comにアクセスすると、ルーターの構成ページが開きます。他のルーターにも同様の「トリック」があり、これと同様に機能します。
アセジャベリン

いいえ、私はasusルーターを使用しません。質問は実際にはもう少し一般的です... IPなしでルーターにアクセスしたいだけでなく、ネットワークに接続されている他のデバイスにもアクセスしたいです。編集を追加します。
サンジハン

2
私のポイントは、いくつかのルータが、彼らは多くの場合、DNSキャッシュサーバとして動作するため、内蔵のこの能力を持っていたあなたが使用しているルータ、私はそれが「他のルータがうまくとしてこれを行うには同様のトリックを持っている」と開いたまま何述べるなかったので
acejavelinを

1
はいはい、私はそれを得て、ありがとう!ルーターは単なる例です。LAN上でプリンターまたはラズベリーPIまたはインターネット制御換気システムを実行することも考えてください。
サンジハン

@sanjihanルーターのメーカーとモデルを開示するか、誰かにDNSに使用しているものを伝えて、このタスクのために完了できる構成についてさらに指示を与える必要があると思います。したがって1.)、ルーターデバイスの要約、作成、モデル化、または2.)DNSに正確に使用しているもの(Windows DNS、組み込みのルーター機能など)
Pimp Juice IT

回答:


18

Yamakajaの回答に加えて、これがローカルDNSサーバーのセットアップ方法です。

まず、DNSサーバーを実行するコンピューターが必要です。これは、通常のコンピューターの1つ(Linuxを実行していて、ほとんどの場合)またはRaspberry Piなどです。このようなデバイスの利点は、安価であり、多くの電力を必要とせず、小型であることです。

DNSサーバーのセットアップ

を使用してRaspberry PiにDNSサーバーをセットアップすることにしましたdnsmasq。これは、小規模なネットワークでの使用に最適な小さなDNSサーバーツールです。bind事実上の標準DNSツールであるを使用することもできますが、これはおそらく小規模なホームネットワークには少々強すぎます。

dnsmasqDebianベースのシステム(Raspbianなど)にパッケージマネージャーを使用してインストールすると、コマンドは次のようになります。

sudo apt-get install dnsmasq

既に静的IPアドレスの割り当てを設定していると仮定します(つまり、質問で言及したIPアドレスは変わらない)。dnsmasqまだ使用していない場合は、DHCPサーバーとしても使用できますが、まだ使用していません。

dnsmasqからホスト名を取得します/etc/hosts。このファイルを次のように編集します。

# IP address    Host name
192.168.1.1     router
192.168.1.22    printer

ホスト名がrouter今に割り当てられている192.168.1.1printer192.168.1.22

これで、独自のDNSサーバーをセットアップしましたが、ネットワーク内のコンピューターはまだ使用していません。このサーバーを使用するには、準備の1つのステップを実行する必要があります。

を使用してdnsmasqデバイスのIPアドレスを見つけますip address(それがであると仮定しましょう192.168.1.42)。を開き、/etc/dnsmasq.conf次の行を追加します。

listen-address=127.0.0.1
listen-address=192.168.1.42

これはdnsmasq、アドレスが指定されたとき127.0.0.1(つまり、自身がDNSサーバー192.168.1.42を使用したいとき)または(他のコンピューターがDNSサーバーを使用したいとき)要求をリッスンする必要があることを示します。

DNSサーバーを使用する

ネットワーク内の各コンピューターは、192.168.1.42DNSサーバーとして(また)使用する必要があることを伝える必要があります。これを行う方法は、オペレーティングシステムによって異なります。これは、インターネット上の指定したオペレーティングシステムで簡単に調べることができます(「<OS>でDNSサーバーを変更する」などを検索します)。

Windows 7の場合、このチュートリアルに従うことができます:https : //www.opennicproject.org/configure-your-dns/how-to-change-dns-servers-in-windows-7/

私のシステム(Arch Linux)では、次の行を /etc/resolvconf.conf

name_servers=192.168.1.42

使用する必要があるファイルは、ネットワークマネージャーの構成によって異なります。DNSを使用する各コンピューターにDNSサーバーIPを追加します。

すぐに動作しない場合は、おそらくデバイスを再起動する必要があります。

これで完了です。これ/etc/hostsで、指定したホスト名を使用するだけで、dnsmasqサーバーの入力したすべてのデバイスにアクセスできます。

(オプション)機能の確認

DNS解決が正しく機能するかどうかを確認する場合dnsutilsは、サーバーを使用するシステムに(Linux)をインストールします。次に実行する

$ dig router

これは次のようなものを返すはずです

; <<>> DiG 9.10.4-P1 <<>> router
;; global options: +cmd
;; Got answer:
...

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;router.                        IN      A

;; ANSWER SECTION:
router.                 0       IN      A       192.168.1.1

;; Query time: 14 msec
;; SERVER: 192.168.1.42#53(192.168.1.42)
;; WHEN: So Jun 26 10:43:18 CEST 2016
;; MSG SIZE  rcvd: 50

解決したいホスト名、解決したIPアドレス、使用したDNSサーバーが表示されます。ご覧のとおり、すべて正常です。

(オプション)TLDの指定

あなたがいないだけでデバイスにアクセスしたい場合routerprinterけどをrouter.homeしてprinter.home、あなたに次の行を追加します/etc/dnsmasq.conf

expand-hosts # Tells dnsmasq to add a TLD to each host name
domain=home # The TLD

再起動が必要になる場合があります。

ソース/さらに読む

についてdnsmasq

についてbind(興味がある場合):


11

はい、あります。2つ(またはそれ以上)のオプションがあります。


hostsファイルの編集(怠zyな方法)

オペレーティングシステムに応じて、「hosts」ファイルにエントリを追加する必要があります。/etc/hostsほとんどのUnixoidとC:\Windows\system32\drivers\etc\hostsWindows で見つけることができます。

エントリを追加するには、ファイルの下部に移動し、次の形式で行を追加します。

<IP>       <the hostname to assign>

例えば。

192.168.1.1      router

(注、IPとホスト名の間のスペースは重要ではありません。しかし、他のエントリと一致すれば、見た目が良くなります。タブまたはスペースを使用できます)

その後、ブラウザにアクセスするだけでルーターにアクセスできます

http://router/

または

router/

ローカルDNSサーバー

詳細については、TuringTuxの回答をご覧ください


ありがとう!これは、単一のコンピューターに最適です。すべてのコンピューターのhostsファイルを手動で変更せずに、これをLAN内のすべてのコンピューターに拡張することは可能ですか?
サンジハン

@sanjihanそれほど簡単ではありません。たとえば、namecheapで1ドル未満で独自のドメイン名を購入し、それを使用して自分のものを指すことができます。たとえば、192.168.1.1を指すようにrouter。<yourdomain>。<tld>をセットアップできますが、名前が長くなります。また、他のユーザーがこの質問に回答したことを知っているように、回答を承認済みとしてマークしてください。
山かじゃ

同じワークグループに属している場合は、PC名を使用できますか?
ジグガンジャー

@jiggunjer私は実際に知りません。私はWindowsに
それほど

2

上記の素晴らしい答えを更新したい:

ルーターを調べて、手動でDNSエントリをサポートしているかどうかを確認できます。

その場合は、ローカル192.168.1.22アドレスをとして追加するだけprinter.homeです。それ以外の場合は、ローカルホストのファイル編集または自分のDNSサーバーのセットアップに制限があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.