【この記事の所要時間 : 約 3 分】
「LAN側のクライアントPCのブラウザから同LAN内にあるサーバに割り当ててあるドメインへのアクセスできない」問題で悩んでいた。
【環境】
自宅サーバー(VineLinux+Apache)で、回線はYahooBBで、ルータはYahooBBブロードバンドルータを利用。
ネットワーク構成は、以下の通り。
WAN側─ルータ┬─サーバー(192.168.3.10)
└─クライアント(192.168.3.*)
クライアントのプライベートIPはDHCPで割り当て。
サーバーにhttp://canalize.jpを割り当てている。(DNSサーバはWAN側にあり)
【状況】
・WAN側のPCのブラウザからhttp://canalize.jpへのアクセスはできる。
・LAN側のクライアントPCのブラウザからサーバのプライベートアドレス(192.168.3.10)へのアクセスはできる。
・LAN側のクライアントPCのブラウザからWAN側にあるプロキシサーバーを利用してhttp://canalize.jpへのアクセスはできる
・LAN側のクライアントPCのブラウザからhttp://canalize.jpへのアクセスができない。
・LAN側のクライアントPCからcanalize.jpへPINGは通る。
【結果】
WAN–(GIP)ルータ(LIP)–(LIP)サーバ
└-(LIP)クライアント
GIP:グローバルIPアドレス
LIP:ローカルIPアドレス
外から接続すると、
WAN→ルータGIP→(ルータLIPを通って)→サーバLIP
という風に接続するようにルータにNATの設定で行っている。
クライアントがサーバLIPでアクセスするときには、
クライアントLIP→サーバLIP
と直接接続している。
が、問題のクライアントがhttp://canalize.jpにアクセスする場合、
クライアントLIP→(ルータLIPを通って)→ルータGIP
とアクセスするようになる。
このとき、ルータの機能として、
クライアントLIP→(ルータLIPを通って)→ルータGIP→(ルータLIPを通って)→サーバLIP
となる機能があるルータならば、
「LAN側のクライアントPCのブラウザからhttp://canalize.jpへのアクセスできる!」
しかしながら、そういう機能がないと、
「LAN側のクライアントPCのブラウザからhttp://canalize.jpへのアクセスできない・・・」
一般的なルータでは、
ローカルからルータのグローバルにアクセスした場合には転送しないというものが多いみたい。
pingの場合は、ルータが返答しているだけなので、通るのも別におかしくない。
結局のところ、使っているルータにそのような機能がなかったみたい。ざんねん。
ラトルズ
売り上げランキング: 148,412
コメント
Smartyのインストールは簡単ですね。
また、使用してみるとその便利さは驚きです。
PHPユーザーなら知っておかないと損をしますね。
ところで、トラックバックしていただいたのですが、
残念ながら文字化けでぜんぜん読めませんでした。
すみませんが再度TBをお願いします。