質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

DNSレコード

DNSレコードとは、DNS(ドメインネームシステム)に登録する情報を指します。主なレコードの種類としては「A/AAAA」「PTR」「SOA」「CNAME」「MX」「NS」「TXT」などがあり、それぞれに役割を持ちます。

DNS

DNSとは、Domain Name Systemのことで、インターネットなどのTCP/IPネットワーク上でドメイン名やホスト名と、IPアドレスとの対応づけを管理するシステムです。DNSのデータベースは、IPアドレスの4つの数字を通知するDNSサーバーで構築されており、IPアドレスをドメイン名から引き出す機能やドメイン名に関するメールサーバ情報を取り扱っています。

Q&A

解決済

2回答

14095閲覧

LAN内のホストに対して名前解決したい

taka-ama

総合スコア7

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

DNSレコード

DNSレコードとは、DNS(ドメインネームシステム)に登録する情報を指します。主なレコードの種類としては「A/AAAA」「PTR」「SOA」「CNAME」「MX」「NS」「TXT」などがあり、それぞれに役割を持ちます。

DNS

DNSとは、Domain Name Systemのことで、インターネットなどのTCP/IPネットワーク上でドメイン名やホスト名と、IPアドレスとの対応づけを管理するシステムです。DNSのデータベースは、IPアドレスの4つの数字を通知するDNSサーバーで構築されており、IPアドレスをドメイン名から引き出す機能やドメイン名に関するメールサーバ情報を取り扱っています。

0グッド

1クリップ

投稿2018/05/04 11:08

編集2018/05/04 16:17

【環境】
ブロードバンドルータのIPアドレス:192.168.3.1
ホストPC(Windows10)のIPアドレス:DHCP(192.168.3.xxx)
仮想サーバ(CentOS7)のIPアドレス:192.168.3.254
仮想サーバのホスト名:locallabo.yuuweb.com
DNSサービス:bind-9.9.4-51.el7_4.2.x86_6
ホストPCから仮想サーバにはTeraTermを用いて、SSHリモート操作可能。

【目標】
仮想サーバに内部向けのDNSサーバを構築して、
LAN内のホストに対して名前解決できるようにしたい。
具体的に、TeraTermで仮想サーバアクセスする際に、サーバのプライベートIPアドレスを指定しないと
接続できないが、ホスト名で接続できるようにしたい。

今回はDNSサーバを利用して正引きの名前解決を行いたいので、hostsファイルは使わない方向です。

仮想サーバ上でBINDをインストールして、/etc/named.confと各ゾーンファイルを設定。
BINDサービスを起動させ、digコマンドにてサーバホスト名を名前解決できるか検証したところ
下記結果を想定してるが、上手くいかない。
;; ANSWER SECTION:
locallabo.yuuweb.com. IN A 192.168.3.254

OS自体を再起動させてもダメ。うまく名前解決できる方法をご教示ください。

実際の結果 [user01@locallabo ~]$ dig locallabo.yuuweb.com. ; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7_4.2 <<>> locallabo.yuuweb.com. ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11130 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 4, ADDITIONAL: 9 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;locallabo.yuuweb.com. IN A ;; ANSWER SECTION: locallabo.yuuweb.com. 10800 IN CNAME HDRedirect-LB3-890977680.us-east-1.elb.amazonaws.com. HDRedirect-LB3-890977680.us-east-1.elb.amazonaws.com. 60 IN A 52.86.22.136 HDRedirect-LB3-890977680.us-east-1.elb.amazonaws.com. 60 IN A 54.174.212.152 ;; AUTHORITY SECTION: us-east-1.elb.amazonaws.com. 125 IN NS ns-235.awsdns-29.com. us-east-1.elb.amazonaws.com. 125 IN NS ns-1119.awsdns-11.org. us-east-1.elb.amazonaws.com. 125 IN NS ns-1793.awsdns-32.co.uk. us-east-1.elb.amazonaws.com. 125 IN NS ns-934.awsdns-52.net. ;; ADDITIONAL SECTION: ns-235.awsdns-29.com. 60720 IN AAAA 2600:9000:5300:eb00::1 ns-934.awsdns-52.net. 165438 IN AAAA 2600:9000:5303:a600::1 ns-1119.awsdns-11.org. 165438 IN AAAA 2600:9000:5304:5f00::1 ns-1793.awsdns-32.co.uk. 165440 IN AAAA 2600:9000:5307:100::1 ns-235.awsdns-29.com. 60720 IN A 205.251.192.235 ns-934.awsdns-52.net. 165438 IN A 205.251.195.166 ns-1119.awsdns-11.org. 165438 IN A 205.251.196.95 ns-1793.awsdns-32.co.uk. 165440 IN A 205.251.199.1 ;; Query time: 199 msec ;; SERVER: 192.168.3.1#53(192.168.3.1) ;; WHEN: Sat May 05 04:34:02 JST 2018 ;; MSG SIZE rcvd: 457

/etc/named.confの設定内容

options { listen-on port 53 { 127.0.0.1; 192.168.3.0/24; }; listen-on-v6 port 53 { ::1; }; //zoneファイルの格納場所 directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; //BINDの利用を許す範囲 allow-query { localhost; 192.168.3.0/24; }; forwarders { 192.168.3.1; }; recursion yes; dnssec-enable yes; dnssec-validation yes; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; pid-file "/run/named/named.pid"; session-keyfile "/run/named/session.key"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; //ルートDNSの情報 zone "." IN { //ルートDNSの情報であることを明示 type hint; file "named.ca"; }; // localhost の正引きの設定 zone "localhost" { // Master DNS Serverであることを示す type master; // ファイル名 file "localhost.zone"; }; // localhost の逆引きの設定 zone "0.0.127.in-addr.arpa" { // Master DNS Serverであることを明示 type master; // ファイル名 file "0.0.127.in-addr.arpa"; }; // yuuweb.com の正引きの設定 zone "yuuweb.com" IN { // Master DNS Serverであることを明示 type master; // ファイル名 file "yuuweb.com"; }; // 192.168.3.* の逆引きの設定 zone "3.168.192.in-addr.arpa" IN { // Master DNS Serverであることを明示 type master; // ファイル名 file "3.168.192.in-addr.arpa"; }; //include "/etc/named.rfc1912.zones"; //include "/etc/named.root.key";

正引きゾーンファイル(yuuweb.com)の設定内容

$TTL 86400 @ IN SOA ns.yuuweb.com. root.yuuweb.com.( 2018050401 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS ns.yuuweb.com. localhost IN A 127.0.0.1 ns IN A 192.168.3.254 locallabo.yuuweb.com. IN A 192.168.3.254 router IN A 192.168.3.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

具体的に、TeraTermで仮想サーバアクセスする際に、サーバのプライベートIPアドレスを指定しないと
接続できないが、ホスト名で接続できるようにしたい。

ここだけの解決方法としては、DNSサーバを構築する以外にhostsを使う方法もあります。
ホストPCのOSが不明ですが、Google等で検索すると設定方法がヒットするかと思います。

DNSを利用する方法としては、ホストPCのDNSサーバ指定がどこになっているのか気になります。
DHCPでDNSサーバ情報も設定されているとすると、ブロードバンドルータがDNSサーバとなっており、構築したDNSサーバを利用していない、といったことがありそうです。
(digの結果を見る限り、ブロードバンドルータに問い合わせしているようです)

;; Query time: 199 msec ;; SERVER: 192.168.3.1#53(192.168.3.1) ;; WHEN: Sat May 05 04:34:02 JST 2018 ;; MSG SIZE rcvd: 457

その場合、ホストPCのDNSサーバの指定を「仮想サーバ(CentOS7)のIPアドレス」とする必要があります。
「仮想サーバのDNS」が正しく動作しない場合、インターネット接続が出来なくなる(名前解決が出来なくなる)
可能性があるため、インターネット接続が出来なくなった場合は、DNSサーバの指定を元に(ルータ)に戻してください。

y_waiwaiさまの回答を確認しての追記

同様の質問が閉じていないままのようですね。
y_waiwaiさま、ありがとうございます。

> taka-amaさま

前の質問の回答としてhichonさまが回答しております、hostsファイルの利用をお勧め致します。

コメントを受けての追記1

書いてませんが、DNSサーバ構築の勉強をしてますのでhostsファイルは使わない方向です。

そうなんですね。わかりました。
この点、他の回答者にも分かりやすいよう、質問文の中に含めておいたほうが間違いが少ないかもしれません。
他の回答者のコメントまで見ない方もいらっしゃるかもしれないので。

ホスト端末のOSはwindowsです。

こちらも同上です。OSバージョンまであると更によいですね。

仮想サーバ上でのdigコマンドはホスト端末のDNSサーバ指定に影響するのでしょうか?

この点は影響しません。
digコマンドがホスト端末からの実行結果と読み間違えたための回答でした。

さて、現状ですが、2つの問題があります。
認識は合っていますでしょうか。

  1. 仮想サーバにて期待通りの名前解決が出来ない
  2. ホスト端末にて期待通りの名前解決が出来ない

「1.」については、仮想サーバで指定しているDNSサーバが「ブロードバンドルータ」になっているため、ブロードバンドルータが名前解決した結果が、digコマンドとして返って来ています。
(それ以外にも、DNSサーバの設定に誤りがあるかもしれません)

digコマンドに@serverで問合せるDNSサーバを指定できると思いますので、localhostをDNSサーバとして指定してみてください。

bash

1dig locallabo.yuuweb.com. @localhost

これで期待通りの結果が返ってくるようであれば、仮想サーバのDNSサーバ指定を変更するだけでよいと思います。
現在、ブロードバンドルータが指定されているので、localhostを指定するよう変更してください。
期待通りとならない場合、DNSサーバの設定に誤りがあります。

「2.」については、「1.」が正しく動作した後の設定となります。
こちらもブロードバンドルータがDNSサーバとして指定されているとのことですので、仮想サーバをDNSサーバとするよう変更して下さい。

コメントを受けての追記2

仮想サーバのDNSサーバ指定をブロードバンドルータからlocalhostに変更する方法

CentOS7では、nmcliコマンドをネットワークデバイスを指定して実行するようですね。
(設定内容は/etc/resolv.confに反映されます)
Google等で検索するとnmcliコマンドの使用例はたくさんヒットするようですよ。

Google検索, nmcli nameserver

もう一息です。頑張って下さい!

投稿2018/05/04 11:31

編集2018/05/05 00:00
takyafumin

総合スコア2335

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

taka-ama

2018/05/04 12:04

ご回答ありがとうございます。 書いてませんが、DNSサーバ構築の勉強をしてますのでhostsファイルは使わない方向です。
taka-ama

2018/05/04 12:08

ホスト端末のOSはwindowsです。 仮想サーバ上でのdigコマンドはホスト端末のDNSサーバ指定に影響するのでしょうか? ちなみにホスト端末のDNSサーバは自動で、ブロードバンドルータです。
taka-ama

2018/05/04 16:39

質問するにあたっての環境説明を補足しました。 ご回答ありがとうございます。 下記問題の認識通りでございます。 ①仮想サーバにて期待通りの名前解決が出来ない ②ホスト端末にて期待通りの名前解決が出来ない ①について教えていただいた通り、dig locallabo.yuuweb.com. @localhostにて実行すると、 localhost(DNSサーバ)にはじめに問い合わせにいき、期待通りの下記結果を得られました。 ;; ANSWER SECTION: locallabo.yuuweb.com. 86400 IN A 192.168.3.254 仮想サーバのDNSサーバ指定を変更する方法がイマイチわからず、調べているところです。。 ②についてはWindowsの[ネットワークと共有センター] > アダプタの設定 > IPv4の優先DNSサーバを 仮想サーバのIPアドレスに指定後、ホスト名でPing導通可能となりました。 yahoo.co.jpなど仮想サーバのゾーンファイルに記載ないものもホスト名でPing導通できるので、 仮想サーバに存在しない分は、ルータのDNS機能へ無事転送され名前解決されているようです。 結果、Windows上のTeraTermからもホスト名で仮想サーバへリモート接続できるようになりました。 残課題の仮想サーバのDNSサーバ指定をブロードバンドルータからlocalhostに変更する方法も教えていただけないでしょうか。よろしくお願い致します。
taka-ama

2018/05/05 03:08

下記手順で仮想サーバの参照DNSを変更できました。 /etc/resolv.confに無事に反映されました。 ①nmcli con mod ens33 ipv4.ignore-auto-dns yes (DHCPでのDNSサーバ設定を無効) ②systemctl restart NetworkManager (NetworkManagerを再起動) ③nmcli con mod ens33 -ipv4.dns 192.168.3.254 (参照先DNSを変更) ④systemctl restart NetworkManager (NetworkManagerを再起動) 大変助かりました。ありがとうございます。 これでようやくWEBサーバ構築へと進めます。
guest

0

前の質問で回答をもらってるようですが、そっちでどうにかしたらいかがでしょうか

投稿2018/05/04 11:29

y_waiwai

総合スコア87719

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問