図解すると以下のような構成

光回線の ONU + なルーターで DHCP を動かし、Time Capsule は無線アクセスポイントとしてだけ機能しているような状態。
クライアント環境は、自宅サーバーで運用しているドメインに向くよう /etc/hosts を使って IP とドメインを制御。(自宅サーバーで内向けのDNS を立てているけど、クライアント側が上手く拾ってくれなくて hosts なんかに頼っている ... )
上記構成で、なぜかブラウザ (Firefox, Safari 両方) が hosts を認識しない。Mail.app のメーラーは hosts を参照している。アプリケーションによって挙動が異なるのが気持ち悪い。
ターミナルで ping を実行して、hosts が有効であることは確認できた。
原因は、dolipo を使ったプロキシ経由の設定にある模様。なぜなら、ブラウザのプロキシ設定をオフにすると正常に動作したから。
対策としては、dolipo を経由しないでブラウザを動かすか、有線でルーターへ直挿しすれば問題なし。
でも、クライアント環境をいちいち切り替えたりするのが面倒だったので以下のような解決策を取った。
Time Capsule の DHCP も有効にし、有線、無線関係なく、Time Capsule に接続した端末へ DHCP を提供するようにした。加えて、Time Capsule の DHCP よりクライアントが参照する DNS を自宅サーバーに設定してみた。
上記設定で、クライアント環境はそのままに対応が完了した。今のところ問題なく動いている。


コメントする