1 views
実現する機能
外部から自宅サーバー「http://ufuso.dip.jp」にアクセスすると、プロバイダーから提供されているルーター(192.168.24.1)がちゃんと自宅サーバー(192.168.24.241)に繋いでくれますが、自宅のWindowsノートパソコン(192.168.24.3)から自宅サーバー「http://ufuso.dip.jp」にアクセスすると繋いでくれません。ドメインufuso.dip.jpがIPアドレス192.168.24.241と同じパソコンのものだよと教えてくれるDNSサーバーが家庭内LAN内には無いからです。
そこで、自宅サーバーに自宅のWindowsノートパソコンやiPhone7からアクセスできるように自宅用のDNSサーバー(内部DNSサーバー)をDnsmasqで構築して、IPアドレス(192.168.24.240)だけではなくufuso.dip.jpでもアクセスできるようにしました。
事前準備
※可能であれば、ieServer.Net(無料)やDynamic DO!.jp(無料)やお名前.com(有料)などからドメインを取得済であること
Dnsmasq導入手順
以下の黒背景部分はGNOME端末を表示しています。紫色はキーボードから入力するコマンド(コピペした方が楽ですが、コマンドは覚えられません)、緑はコマンドや処理内容の説明、白は自動表示する部分、赤は注意書きです。
1 Dnsmasqインストール
#Dnsmasqインストール [root@ufuso ~]# yum -y install dnsmasq インストール: dnsmasq.x86_64 0:2.76-2.el7_4.2 完了しました! #Dnsmasqを起動 [root@ufuso ~]# systemctl start dnsmasq #Dnsmasqに自動起動設定 [root@ufuso ~]# systemctl enable dnsmasq Created symlink from /etc/systemd/system/multi-user.target.wants/dnsmasq.service to /usr/lib/systemd/system/dnsmasq.service. |
2 Dnsmasq設定
#名前解決が必要なPCのIP、ホスト名の登録 [root@ufuso ~]# vi /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 #PC毎のIPアドレスとホスト名を入力 192.168.24.240 ufuso.org #PC毎のIPアドレスとホスト名を入力 192.168.24.241 ufuso.dip.jp topi.0t0.jp #dnsmasq再起動 [root@ufuso ~]# systemctl restart dnsmasq #正引き、逆引きツールのInstall [root@ufuso ~]# yum -y install bind-utils インストール: bind-utils.x86_64 32:9.9.4-51.el7 依存性関連をインストールしました: bind-libs.x86_64 32:9.9.4-51.el7 完了しました! #networkの設定変更のためnetwork-scriptsフォルダに移動 [root@ufuso ~]# cd /etc/sysconfig/network-scripts #フォルダ内を一覧 [root@ufuso network-scripts]# ll 合計 236 #イーサネット名を確認 -rw-r--r--. 1 root root 372 9月 11 22:22 ifcfg-enp2s0 -rw-r--r--. 1 root root 311 9月 11 22:22 ifcfg-enp3s6 ... ... ... -rw-r--r--. 1 root root 15780 4月 13 05:24 network-functions -rw-r--r--. 1 root root 26829 9月 12 2016 network-functions-ipv6 #enp2s0ファイルの編集 [root@ufuso network-scripts]# vi ifcfg-enp2s0 TYPE=Ethernet BOOTPROTO=none DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=enp2s0 UUID=9adaad69-1085-4bd3-adc6-e93caf1609b2 DEVICE=enp2s0 ONBOOT=yes #名前解決の参照先を Dnsmasq サーバーのIPアドレスへ変更 DNS1=192.168.24.241 IPADDR=192.168.24.241 PREFIX=24 GATEWAY=192.168.24.1 IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_PRIVACY=no #NetworkManager再起動 [root@ufuso network-scripts]# systemctl restart NetworkManager #network再起動 [root@ufuso network-scripts]# systemctl restart network #enp2s0のアクティブ化を確認 [root@ufuso network-scripts]# nmcli connection show --active 名前 UUID タイプ デバイス enp2s0 9adaad69-1085-4bd3-adc6-e93caf1609b2 802-3-ethernet enp2s0 #network-scriptsから抜ける [root@ufuso network-scripts]# cd |
3名前解決ができることの確認(LinuxPCから確認する場合)
#サーバーの正引きテスト [root@ufuso ~]# dig ufuso.dip.jp ; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7 <<>> ufuso.dip.jp ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43003 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;ufuso.dip.jp. IN A ;; ANSWER SECTION: ufuso.dip.jp. 0 IN A 192.168.24.241 ;; Query time: 1 msec ;; SERVER: 192.168.24.241#53(192.168.24.241) ;; WHEN: 火 10月 31 19:45:12 JST 2017 ;; MSG SIZE rcvd: 57 #サーバーの逆引きテスト [root@ufuso ~]# dig -x 192.168.24.241 ; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7 <<>> -x 192.168.24.241 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 49684 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;241.24.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 241.24.168.192.in-addr.arpa. 0 IN PTR ufuso.dip.jp. ;; Query time: 1 msec ;; SERVER: 192.168.24.241#53(192.168.24.241) ;; WHEN: 火 10月 31 19:45:22 JST 2017 ;; MSG SIZE rcvd: 82 |
コメントを残す