DNSを使ってネットワークデバイスにホスト名で管理接続しよう:Windows Server 2012 ×「ちょっとだけ連携」でネットワーク管理を便利に(5)(3/3 ページ)
今回は、ネットワークデバイスに管理接続を行うときや、pingやtracerouteコマンドの実行時などさまざまな場面で、IPアドレスではなくホスト名を指定できるように環境を整えます。
(2)DNSクライアントの設定
次に、ネットワークデバイスにDNSクライアントの設定を行います。DNSクライアントに必要な設定は、次の3つです。
- DNSクライアント機能の有効化
- DNSサーバのIPアドレス
- デフォルトのドメイン名
上記項目の設定方法を、順番に確認します。
DNSクライアント機能の有効化
シスコの場合は、DNSクライアント機能がデフォルトで有効化されています。ただし、DNSサーバのIPアドレスは設定されていないため、名前解決のためのDNSクエリメッセージがローカルブロードキャストアドレス(255.255.255.255)宛に送信されます。
(config)# ip domain-lookup
DNSクライアント機能を有効化します(デフォルト有効)。DNSサーバが存在しない場合は、no ip domain-lookupコマンドを実行し、DNSクライアント機能を無効化します。
L3SW1#telnet L2SW1.edifist.co.jp.
Translating "L2SW1.edifist.co.jp."...domain server (255.255.255.255) [OK]
この例では、DNSクライアント機能が有効化されていますが、DNSサーバのIPアドレスが設定されていないため、ホスト名を指定すると255.255.255.255宛にDNSクエリが送信されていることが分かります(デフォルトの状態)。同じサブネットにDNSサーバがあれば、DNSサーバにクエリが届き、応答が返信されますが、異なるサブネットにある場合、クエリは届かずにタイムアウトします。
アライドテレシスの場合は、DNSサーバのIPアドレス設定をすればDNSクエリが送信されますが、設定がなければDNSクエリは送信されません。
DNSサーバのIPアドレス
DNSサーバのIPアドレスを設定する場合、シスコの場合は、ip name-serverコマンドを実行します。
(config)# ip name-server DNSサーバのIPアドレス1 [ DNSサーバのIPアドレス2…6 ]
DNSクエリの送信先となる、DNSサーバのIPアドレスを指定します(最大6つ)。
L3SW1(config)#ip name-server 10.1.2.100
L3SW1(config)#exit
すべてのスイッチやルータで、ip name-serverコマンドを実行します。
アライドテレシスのスイッチで、DNSサーバのIPアドレスを設定する場合は、add ip dnsコマンドを実行します。
Manager > add ip dns primary=DNSサーバのIPアドレス [secondary= DNSサーバのIPアドレス]
DNSクエリの送信先となる、DNSサーバのIPアドレスを指定します。DNSサーバが2台ある場合は、secondaryオプションで2台目のDNSサーバのIPアドレスを指定します。
Manager > add ip dns primary=10.1.2.100
Info (1005003): Operation successful.
なお、WindowsではDNSクライアント機能はデフォルトで有効化されています。また、DNSサーバのIPアドレスは、画面8で、手動設定かDHCPサーバから取得するかを選択できます(Active Directory環境の場合はDNSが必須なため、これらの設定はすでに行われているはずです)。
デフォルトのドメイン名
DNSでは、www.edifist.co.jp.やL3SW.edifist.co.jp.のように、ホスト名とドメイン名をつなげた表記をします。この表記をFQDN(Fully Qualified Domain Name/完全修飾ドメイン名)といいます。しかし、ping L3SW.edifist.co.jp.やtelnet L3SW.edifist.co.jp.のように、ホスト名を指定するときに常にFQDNを指定するのは面倒です。ping L3SWやtelnet L3SWのように、ドメイン名を省略した短い形式で宛先ホスト名が指定できれば、さらに便利になるはずです。
このような場合、デフォルトのドメイン名を指定します。デフォルトのドメイン名を指定すれば、ドメイン名を省略したときに、バックグラウンドで自動的にデフォルトのドメイン名が補われた状態で、DNSサーバにクエリが送信されます(図6)。
シスコのISRルータやCatalystスイッチで、デフォルトのドメイン名を指定するには、ip domain-nameコマンドを実行します。これは、前回SSHサーバ機能の設定をしたときにも登場したコマンドです。
(config)# ip domain-name ドメイン名
ホスト名がFQDNで指定されなかった場合の、デフォルトのドメイン名を指定します。
L3SW1#ping l2sw2
Translating "l2sw2"...domain server (10.1.2.100) [OK]
pingコマンドをレイヤ2スイッチL2SW1に対して実行すると、「domain server (10.1.2.100)」から、DNSサーバにクエリを送信している様子が分かります。
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.1.2.200, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
「Sending 5, 100-byte ICMP Echos to 10.1.2.200」から、L2SW1のIPアドレス(10.1.2.200)が解決でき、pingが実行されたことが分かります。シスコでは、pingに成功した場合は「!」が表示されるため、pingにも成功していることが分かります。
L3SW1#ssh -l netadmin1 l2sw2
Translating "l2sw2"...domain server (10.1.2.100) [OK]
Password:
L2SW2>
SSHで接続した場合も、DNSサーバを使って名前解決が行われ、その後L2SW2に接続が正しく行われていることが確認できます(telnetの場合も同様です)。
L2SW2>logout
L2SW2からログアウトし、L3SW1のプロンプトに戻ります。
このときのパケットを、DNSサーバでWiresharkで確認すると、デフォルトのドメイン名が補われた状態でDNSクエリを送信していることが分かります(画面9)。
アライドテレシスの場合は、ローカルデバイスのホスト名をFQDNで設定しておくと、telnetコマンド実行時に、ドメイン名の部分をデフォルトのドメイン名として扱います。
Manager > set system name=ホスト名
ホスト名(System Name)を指定します。ホスト名は、L3SW1のようなドメイン名のない名前か、L3SW1.edifist.co.jpのようなFQDNのいずれかを指定できます。set system name=noneで設定を取り消すことができます。
Manager > set system name=l3sw1.edifist.co.jp
Info (1034003): Operation successful.
ここでは、アライドテレシスのL3スイッチにl3sw1.edifist.co.jpというホスト名を設定しています。
Manager l3sw1.edifist.co.jp> telnet l2sw1
Info (1005327): Resolving host name "l2sw1.edifist.co.jp" to IP address.
Info (1005328): Host name resolved to 10.1.1.200.
Info (1033256): Attempting Telnet connection to l2sw1.edifist.co.jp, Please wait ....
「Resolving host name "l2sw1.edifist.co.jp" to IP address.」という表示から、ローカルホストのドメイン名を自動的に補ってDNSサーバにクエリを送信していることが分かります。ただしこの機能は、アライドテレシスの場合はTelnet以外で利用できないため、pingなどを実行する場合はFQDNでホスト名を指定する必要があります。
User Access Verification
Username: netadmin1
Password:
ユーザー名とパスワードを入力します。
L2SW2>
アクセス先ネットワークデバイスのプロンプトが表示されます。
L2SW2>logout
L2SW2からログアウトし、L3SW1のプロンプトに戻ります。
Manager l3sw1.edifist.co.jp>
TELNET session now CLOSED.
このような、デフォルトのドメイン名は、「DNSサフィックス」という名前でWindowsにも実装されています(画面10)。
Windowsのデフォルトでは、[ドメインのメンバーシップが変更されるときにプライマリDNSサフィックスを変更する]が選択されていますが、これは、Active Directoryドメインに参加するときにActive Directoryドメイン名が、デフォルトのドメイン名として自動的に設定されるようになっていることを表しています。このためWindowsでは、Active Directoryドメイン環境であれば、デフォルトのドメイン名はActive Directoryドメイン名になります。
画面10は、以下の手順で表示します。
1. [コントロールパネル]を開き、[システムとセキュリティ]−[システム]を選択します。
2. [システム]ウインドウで、[設定の変更]−[変更]−[詳細]を選択します。
以上で、ネットワークデバイスへの管理アクセスを、ネットワークデバイスのホスト名で行えるようにするための「ちょっとだけ連携」は終了です。ネットワークデバイスのIPアドレスを変更したときも、ホスト名で指定できる環境があれば、IPアドレスを覚え直す必要がないので便利です。
次回からは、IPv6環境での「ちょっとだけ連携」を、数回に分けて導入から説明します。
著者プロフィール
山口 希美(やまぐち きみ)
ITインストラクター
エディフィストラーニング(旧社名NRIラーニングネットワーク)で、ネットワーク関連コース全般の企画・開発・実施、および書籍の執筆などを担当。同社で「理論と実装をバランスよく」をモットーに、実機演習中心のトレーニングを実施中。分かりやすさには定評がある。
Copyright © ITmedia, Inc. All Rights Reserved.