📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
ページの作成:「== 概要 == DNSサーバ(BIND)は、centos.comというドメイン名からIPアドレスを返したり、IPアドレスからドメイン名を返すサーバであ…」 |
|||
| (同じ利用者による、間の10版が非表示) | |||
| 1行目: | 1行目: | ||
== 概要 == | == 概要 == | ||
DNSサーバ(BIND) | DNSサーバ(BIND)は、rhel.comというドメイン名からIPアドレスを返したり、IPアドレスからドメイン名を返すサーバである。<br> | ||
<br> | <br> | ||
内部でサーバにアクセスするときに、IPアドレスではなく、rhel.comでアクセスできるようにするのが、内部向けDNSサーバであり、<br> | |||
外部からサーバにアクセスするときに、自ドメイン名からIPアドレスへの変換(名前解決)を行なうようにするのが、外部向けDNSサーバである。<br> | 外部からサーバにアクセスするときに、自ドメイン名からIPアドレスへの変換(名前解決)を行なうようにするのが、外部向けDNSサーバである。<br> | ||
<br> | <br> | ||
| 17行目: | 17行目: | ||
== BINDのインストール == | == BINDのインストール == | ||
DNSサーバを構築するため、BINDをインストールする。<br> | DNSサーバを構築するため、BINDをインストールする。<br> | ||
sudo | sudo dnf install bind bind-chroot bind-utils | ||
<br><br> | <br><br> | ||
| 25行目: | 25行目: | ||
<br> | <br> | ||
options { | options { | ||
#listen-on port 53 { 127.0.0.1; }; | # 全てListenする | ||
#listen-on-v6 port 53 { ::1; }; | #listen-on port 53 { 127.0.0.1; }; | ||
listen-on port 53 { any; }; | |||
# IPv6を使用しない | |||
#listen-on-v6 port 53 { ::1; }; | |||
listen-on-v6 { none; }; | |||
version "unknown"; ← BINDのバージョン情報の非表示化 | version "unknown"; ← BINDのバージョン情報の非表示化 | ||
directory "/var/named"; | directory "/var/named"; | ||
| 37行目: | 43行目: | ||
recursion yes; ← 再帰問合せ機能を有効化(内部DNSサーバとして動作) | recursion yes; ← 再帰問合せ機能を有効化(内部DNSサーバとして動作) | ||
allow-query { localhost; | |||
allow-recursion { localhost; localnets; }; | # 問い合わせを許可する範囲(内部ネットワークからのみ問い合わせを許可) | ||
allow-query-cache { localhost; | # allow-query { localhost; }; | ||
forwarders{ | allow-query { localhost; 192.168.1.0/24; }; | ||
# 内部からのみ再帰問合せを許可 | |||
# allow-recursion { localhost; }; | |||
allow-recursion { localhost; localnets; }; | |||
# ゾーン情報の転送を許可する範囲(セカンダリDNSがいればその場所/範囲) | |||
# allow-query-cache { localhost; }; | |||
allow-query-cache { localhost; 192.168.1.0/24; }; | |||
# 本DNSサーバ管理外の問合せ先 | |||
forwarders{ 192.168.1.1; 8.8.8.8; }; | |||
...省略 | ...省略 | ||
| 55行目: | 72行目: | ||
# 内部向けDNSの設定 | # 内部向けDNSの設定 | ||
view "internal" { | view "internal" { | ||
match-clients { | match-clients { | ||
localhost; | |||
192.168.1.0/24; | |||
}; | |||
zone "." IN { | match-destinations { | ||
192.168.1.0/24; | |||
}; | |||
zone "." IN { | |||
type hint; | |||
file "named.ca"; | |||
}; | |||
include "/etc/named.rfc1912.zones"; | |||
include "/etc/named.root.key"; | |||
include "/etc/named/named.rhel.com.zone"; | |||
include "/etc/named/named. | |||
}; | }; | ||
# 外部向けDNSの設定 | # 外部向けDNSの設定(固定IPアドレスの場合のみ) | ||
view "external" { | view "external" { | ||
match-clients { | |||
match-clients { any; }; | any; | ||
match-destinations { any; }; | }; | ||
include "/etc/named/named. | |||
match-destinations { | |||
any; | |||
}; | |||
include "/etc/named/named.rhel.com.zone.wan"; | |||
}; | }; | ||
<br> | <br> | ||
rhel.comの内部向けゾーン定義ファイルを作成する。<br> | |||
sudo vi /etc/named/named. | sudo vi /etc/named/named.rhel.com.zone | ||
<br> | <br> | ||
zone " | zone "rhel.com" { | ||
type master; | type master; | ||
file " | file "rhel.com.db"; | ||
}; | }; | ||
| 96行目: | 119行目: | ||
}; | }; | ||
<br> | <br> | ||
rhel.comの外部向けゾーン定義ファイルを作成する。(固定IPアドレスの場合のみ)<br> | |||
sudo vi /etc/named/named. | sudo vi /etc/named/named.rhel.com.zone.wan | ||
<br> | <br> | ||
# 正引き設定 | # 正引き設定 | ||
zone " | zone "rhel.com" { | ||
type master; | type master; | ||
file " | file "rhel.com.db.wan"; | ||
allow-query { any; }; | |||
allow-query { | |||
any; | |||
}; | |||
}; | }; | ||
| 122行目: | 148行目: | ||
dig . ns @198.41.0.4 +bufsize=1024 > /var/named/chroot/var/named/named.ca | dig . ns @198.41.0.4 +bufsize=1024 > /var/named/chroot/var/named/named.ca | ||
<br> | <br> | ||
また、各月で、ルートゾーンが最新かどうか確認し、更新されていればルートゾーンの更新およびBINDの再起動を自動的に行うようにするため、<br> | |||
ルートゾーンの自動更新スクリプトを作成する。<br> | |||
※ルートゾーンが更新されていた場合のみ、新旧ルートゾーン情報及び、新旧ルートゾーンの差分情報をroot宛にメールする。<br> | ※ルートゾーンが更新されていた場合のみ、新旧ルートゾーン情報及び、新旧ルートゾーンの差分情報をroot宛にメールする。<br> | ||
sudo vi named. | sudo vi named.root_update | ||
<br> | <br> | ||
<syntaxhighlight lang="sh"> | |||
#!/bin/bash | #!/bin/bash | ||
| 166行目: | 194行目: | ||
rm -f $new $errors | rm -f $new $errors | ||
</syntaxhighlight> | |||
<br> | <br> | ||
ルートゾーンの更新スクリプトに実行権限を付加する。<br> | ルートゾーンの更新スクリプトに実行権限を付加する。<br> | ||
| 174行目: | 203行目: | ||
<br><br> | <br><br> | ||
== | == 内部向け正引きゾーンデータベースの作成(ドメイン名からIPアドレス) == | ||
正引きゾーンデータベースを作成する。<br> | 正引きゾーンデータベースを作成する。<br> | ||
sudo vi /var/named/ | sudo vi /var/named/rhel.com.db | ||
<br> | <br> | ||
$TTL 86400 | $TTL 86400 | ||
@ IN SOA | @ IN SOA rhel.com. root.rhel.com.( | ||
2020010101 ; Serial | |||
28800 ; Refresh | 28800 ; Refresh | ||
14400 ; Retry | 14400 ; Retry | ||
3600000 ; Expire | 3600000 ; Expire | ||
86400 ) ; Minimum | 86400 ) ; Minimum | ||
IN NS | IN NS rhel.com. | ||
IN MX 10 | IN MX 10 rhel.com. | ||
@ IN A 192.168.1. | @ IN A 192.168.1.30 ;サーバのプライベートIPアドレスを指定(rhel.com用) | ||
* IN A 192.168.1. | * IN A 192.168.1.30 ;サーバのプライベートIPアドレスを指定(*.rhel.com用) | ||
<br><br> | <br><br> | ||
== | == 内部向け逆引きゾーンデータベースの作成(IPアドレスからドメイン名) == | ||
逆引きゾーンデータベースを作成する。<br> | 逆引きゾーンデータベースを作成する。<br> | ||
sudo vi /var/named/1.168.192.in-addr.arpa.db | sudo vi /var/named/1.168.192.in-addr.arpa.db | ||
<br> | <br> | ||
$TTL 86400 | $TTL 86400 | ||
@ IN SOA | @ IN SOA rhel.com. root.rhel.com.( | ||
2020010101 ; Serial | |||
28800 ; Refresh | 28800 ; Refresh | ||
14400 ; Retry | 14400 ; Retry | ||
3600000 ; Expire | 3600000 ; Expire | ||
86400 ) ; Minimum | 86400 ) ; Minimum | ||
IN NS | IN NS rhel.com. ; ネームサーバ名 | ||
30 IN PTR rhel.com. ; サーバIPアドレス最下位部(192.168.1.30)とドメイン名を指定 | |||
<br><br> | <br><br> | ||
== | == 外部向け正引きゾーンデータベースの作成(ドメイン名からIPアドレス)<br>(固定IPアドレスの場合のみ) == | ||
外部向け正引きゾーンデータベースを作成する。<br> | 外部向け正引きゾーンデータベースを作成する。<br> | ||
sudo vi /var/named/ | sudo vi /var/named/rhel.com.db.wan | ||
<br> | <br> | ||
$TTL 86400 | $TTL 86400 | ||
@ IN SOA ns1. | @ IN SOA ns1.rhel.com. root.rhel.com.( | ||
2020010101 ; Serial | |||
7200 ; Refresh | 7200 ; Refresh | ||
7200 ; Retry | 7200 ; Retry | ||
2419200 ; Expire | 2419200 ; Expire | ||
86400 ) ; Minimum | 86400 ) ; Minimum | ||
IN NS ns1. | IN NS ns1.rhel.com. ; ネームサーバ名 | ||
IN MX 10 | IN MX 10 rhel.com. ; MXホスト名(メールサーバを構築する場合のみ) | ||
ns1 IN A XXX.XXX.XXX. | ns1 IN A XXX.XXX.XXX.XXX ; サーバのグローバルIPアドレスを指定(ns1.rhel.com用) | ||
@ IN A XXX.XXX.XXX. | @ IN A XXX.XXX.XXX.XXX ; サーバのグローバルIPアドレスを指定(rhel.com用) | ||
www IN A XXX.XXX.XXX. | www IN A XXX.XXX.XXX.XXX ; サーバのグローバルIPアドレスを指定(www.rhel.com用) | ||
ftp IN A XXX.XXX.XXX. | ftp IN A XXX.XXX.XXX.XXX ; サーバのグローバルIPアドレスを指定(ftp.rhel.com用) | ||
mail IN A XXX.XXX.XXX. | mail IN A XXX.XXX.XXX.XXX ; サーバのグローバルIPアドレスを指定(mail.rhel.com用) | ||
rhel.com. IN TXT "v=spf1 ip4:XXX.XXX.XXX.XXX ~all" ;サーバのグローバルIPアドレスを指定(メールサーバを構築する場合のみ) | |||
<br><br> | <br><br> | ||
== | == 外部向け逆引きゾーンデータベースの作成(IPアドレスからドメイン名)<br>(固定IPアドレスでプロバイダから逆引き権限を委譲されている場合のみ) == | ||
外部向け逆引きゾーンデータベースを作成する。<br> | 外部向け逆引きゾーンデータベースを作成する。<br> | ||
sudo vi /var/named/SUBxxx.xxx.xxx.xxx.in-addr.arpa.db.wan | sudo vi /var/named/SUBxxx.xxx.xxx.xxx.in-addr.arpa.db.wan | ||
<br> | <br> | ||
$TTL 86400 | $TTL 86400 | ||
@ IN SOA ns1. | @ IN SOA ns1.rhel.com. root.rhel.com.( | ||
2020010101 ; Serial | |||
7200 ; Refresh | 7200 ; Refresh | ||
7200 ; Retry | 7200 ; Retry | ||
2419200 ; Expire | 2419200 ; Expire | ||
86400 ) ; Minimum | 86400 ) ; Minimum | ||
IN NS ns1. | IN NS ns1.rhel.com. | ||
xxx IN PTR | xxx IN PTR rhel.com. ;サーバIPアドレス最下位部(xxx.xxx.xxx.xxx)とドメイン名を指定 | ||
<br> | <br> | ||
<span style="color:#C00000"> | <span style="color:#C00000"> | ||
| 255行目: | 284行目: | ||
== ファイヤーウォールのポート開放 == | == ファイヤーウォールのポート開放 == | ||
ファイヤーウォールのポートを開放する。(TCP53番ポートとUDP53番ポート)<br> | |||
sudo firewall-cmd --add-service= | sudo firewall-cmd --add-service=dns --parmanent | ||
sudo firewall-cmd --reload | sudo firewall-cmd --reload | ||
<br><br> | <br><br> | ||
== ルータのポート開放 == | == ルータのポート開放 == | ||
ルータ側の設定で、TCP53番ポートとUDP53番ポートへのアクセスをDNSサーバ( | ルータ側の設定で、TCP53番ポートとUDP53番ポートへのアクセスをDNSサーバ (RHEL) に転送するように設定する。<br> | ||
<br> | <br> | ||
< | <u>※注意</u><br> | ||
<u>ルータのポート開放の設定は、各ルータのマニュアルを参照すること。</u><br> | |||
</span> | </span> | ||
<br><br> | <br><br> | ||
{{#seo: | |||
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki | |||
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板 | |||
|description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux | |||
|image=/resources/assets/MochiuLogo_Single_Blue.png | |||
}} | |||
__FORCETOC__ | __FORCETOC__ | ||
[[カテゴリ: | [[カテゴリ:RHEL]][[カテゴリ:Web]] | ||