OPNsenseでローカルホスト名を解決する方法
原文は Michael Lynch により に公開されました。 このブログを購読する
私のルーターはOPNsense Businessで動いています。オープンソースのルーターを使えるのは気に入っていますが、いくつか不満点もあります。
一番大きな問題は、OPNsenseがデフォルトでローカルネットワーク上のホスト名を解決できないことです。
なぜOPNsenseはローカルホスト名を解決できないのか
今まで使ってきた他のルーターなら、ネットワーク上にfoo123という名前のコンピューターがあって、メインのデスクトップからping foo123を実行すれば、すべて問題なく動きました。デスクトップはfoo123へのpingに成功します。
OPNsenseでは、デスクトップからfoo123にpingを打つことができません。OPNsenseはデフォルトでローカルホスト名を解決しないようですが、なぜそうなっているのかわかりません。
状況をある程度改善する回避策は見つけましたが、まだ完璧ではありません。
Unboundにローカルホスト名を解決させる
Services > Unbound DNS > General に移動します。
次のオプションにチェックを入れます:
- Register ISC DHCP4 Leases
- Register DHCP Static Mappings

Unboundの設定で「Register ISC DHCP4 Leases」と「Register DHCP Static Mappings」にチェックを入れる
「Apply」をクリックして変更を適用します。
ホスト名を手動で指定する
Unboundを設定しても、OPNsenseがローカルホストを常に解決してくれるわけではなく、なぜなのかわかりません。
どうしてもOPNsenseに解決させたい場合は、手動でマッピングを強制しています。
ローカルドメイン名を決める
- System > Settings > General に移動します。
- 「Domain」の欄に、ローカルネットワーク用のドメイン名を指定します。
localを選ぶのが正しいと思っていましたが、ヘルプテキストではそうしないよう警告されています。- 私は
home.arpaを選びました。これが家庭用ネットワークとして技術的に正しいドメインだからですが、正直かなり見た目が悪いです。 - IETFの定義では、ドメインは本来
home.arpa.(末尾にドット付き)であるべきですが、OPNsenseはそれをドメインとして拒否し、home.arpaを推奨するので、そちらを使うことにしています。
- 「Save」をクリックして変更を適用します。

ホストの静的マッピングを作成する
- Services > ISC DHCPv4 > Leases に移動します。
- OPNsenseに解決させたいホストを、ホスト一覧から探します。
- 表の行の右端にある
+アイコンをクリックします。Static DHCP Mappingのダイアログが表示されるはずです。 - 「IP address」フィールドにローカルIPアドレスを入力します。
- 「Save」をクリックして静的IPマッピングを保存します。
ホスト名の手動オーバーライドを作成する
- Services > Unbound DNS > Overrides に移動します。
- 「Host Overrides」の下にあるオレンジ色の「+」ボタンをクリックして、新しいオーバーライドを追加します。
- 「Host」に、静的マッピングで指定したホスト名を入力します。
- 「Domain」に
home.arpaと入力します。 - 「IP address」に、静的マッピングで選んだIPアドレスを入力します。
- 「Save」をクリックします。
.home.arpaドメインサフィックスを付けてホストを指定する
OPNsenseがホストfoo123の解決に失敗しても、foo123.home.arpaなら解決できることがあるので、ホスト名だけでうまくいかないときは、常にドメインサフィックスを付けて試すようにしています。
ドメイン名がなければローカルネットワーク上のホストを指しているのは明らかなので、なぜOPNsenseがサフィックスを必要とするのかはわかりませんが、.home.arpaドメインを付けるとうまくいくことがあります。
他に改善策はありますか?
OPNsenseのホスト名解決をもっと壊れにくく、信頼できるものにするための提案があれば、コメントで教えてください。
記事をランダムに読む
コメント
ログインしてコメントする