質問: dmzのphpからlan内のmysqlへの接続が遅いのですが・・・ 初めて質問させていただきます。 現在、公開サーバ(dmz)のphpから、dbサーバ(lan)のmysqlへ、接続を試みています。 mysql_connect()により接続はできるのですが、どうにも時間がかかって困っています(5秒くらい)。 (公開サーバにmysqlをインストールして接続すると、ほぼ待ち時間なく接続されます) 環境、設定は以下の通りです。 (公開サーバ)dmzに接続 windows 2003 server プライベート:192.168.0.1 (dbサーバ)lanに接続 windows 2003 server プライベートip:192.168.1.1 (ルータ/ファイアウォール)sonicwallを使用 dmz(192.168.0.1)からlan(192.168.1.1)へアクセス[any]を許可 wanからdmz(192.168.0.1)へのアクセス[http]を許可 (phpのソース) mysql_connect('192.168.1.1', $dbuser, $dbpwd); <<質問>> (1) phpから、同サーバのmysqlに接続する場合と、別サーバに接続する場合とでは、このレスポンスの差は仕方がないものなのでしょうか? (2) 接続が遅くなる要因になりそうなことがあれば教えてください。 (3) dmzからlanへのアクセスを[全て]許可するのは、セキュリティ上どうかと思うのですが、mysqlにアクセスするのに何を許可すれば良いかわからず[any]にしています。許可が必要なサービス(ポート?)を教えてください。
回答: (1)ネットワークで通信する分、ローカルに接続する場合より、劣るとは思いますが5秒くらいというのはいくらなんでも遅すぎかと思います。 (2)切り分けしていかないとなんとも言えないと思います。設定の問題、ネットワーク、負荷など考えられることはたくさんあると思いますのでひとつずつつぶしていくしかないかと。 (3)一度denyにしてブロックさせ、ファイアウォールのログを見るとどこの何番ポートからどこの何番ポートへの通信を拒否したというのが残ってるんじゃないでしょうか?それを見て判断すると早いかも。(許可のログも残ってれば一度denyする必要はないと思いますが。。)