iOSデバイスでpi-holeが効いてない気がする

pi-holeを導入してみたものの、iOSデバイスのブラウザでは相変わらず広告が表示されている気がしたので設定を見直した。

pi-holeのDHCP設定で”Enable IPv6 support (SLAAC + RA)”にチェックを入れて保存し、iOSデバイスのWi-Fiを再接続したら解決した。

以下メモ📝

機材構成は以下の通り
・ONU

・NTT貸与ルーター
┣・pi-hole
┣・wifi AP
┗・その他機材

DHCPサーバーはpi-holeのものを利用している。
NTT貸与ルーターに内蔵されているDHCPはオフ。
このとき、pi-holeのIPv6サポートは有効化していなかった。

iOSのネットワーク設定を見ても正しくDNSを設定できているように見えたが、IPv6アドレスで表示されている方のDNSがpi-holeでは無いように感じたので調べた。

Windowsを使っているので、CMDで確認した。
まずはIPv4アドレスと物理アドレスの組み合わせを確認する。

arp -a

次にIPv6アドレスと物理アドレスを確認する。
IPv6はarpじゃない。

netsh interface ipv6 show neighbors

一覧からiOSのネットワーク設定に表示されているDNSのアドレスを探し、物理アドレスをarpのリストと突き合わせて宛先を確認した。
もっと良いやり方があると思うけど、一回きりの作業なのでそこまで効率化を求めなかった。

ちゃんと調べたらルーターに向いていることが確認できた。
この構成ではIPv4のDNSはpi-holeに向くが、IPv6のDNSはデフォルトゲートウェイに向くらしい。
iOSデバイスはIPv6で問い合わせて名前解決してしまうようで、pi-holeでブロックしきれていなかった。

IPv6だけの問題でありDNSの自動設定はDHCPサーバーの役割なので、pi-holeの設定を見直すこととした。
明らかにIPv6関連の設定(”Enable IPv6 support (SLAAC + RA)”)があったのでそれを有効化して保存。

iOSデバイス側でWiFiをオフ→オンの操作をして再接続したところ、適切なアドレスが降ってくるようになって円満解決。

めでたしめでたし。