[pgsql-jp: 31638] Re: postgreSQLをクライアントからTCP/ip接続するには?

T.Suzuki t_suzuki @ kenwood-eng.co.jp
2003年 11月 27日 (木) 13:28:58 JST


鈴木@KEGと申します。

同じく、ipv6のエラーが出る状況で困っていました。
解決の方法ではありませんが、ご参考になればと

以下、私の状況です。
----------------
PostgreSQL: 7.4
OS: VineLinux 2.6
----------------

状況はおおよそ、堀田さんと同じです。

> ・特別に IPv6 の設定は行っていません。
> ・(普段使わないので)パッケージのアップデートも全く行っていません。
> ・ネットワークについては、IPv4 で固定 IP を振っています。
> 
> このような環境があったので、 postgresql-7.4.tar.gz を持ってきて
> 
>   ./configure --enable-debug
> 
> だけのオプションでビルドしてみました。configure の途中で
> 
>   (略)
> checking for bison... bison -y
> configure: WARNING:
> *** The installed version of Bison is too old.  PostgreSQL needs
> *** Bison version 1.875 or later.
>   (略)
>   checking for struct sockaddr_in6... yes
> とか言われました。
config.log を確認すると同じ内容でした。

> あとは正常にビルドできたみたいなので、postgresql.conf で
> tcpip_socket = true
> と設定して、pg_hba.conf に(確認用として)
> host all all 192.168.0.0 255.255.255.0 trust
上記の設定も行いました。

> で確認すると、ちゃんとプロセスが生きています。別のマシン上の
> 「psql というクライアント」から「TCP/IPで」無事接続できました。
ここの結果は違いました。
JDBC を介した socket 通信でエラーが出ます(接続できません)。
# psql の"-h" でホスト指定したのでしょうか?
# だとしたら、libpqを使用したネイティブ接続になっているかも

> # configure 時に HAVE_IPV6 とかを殺せば出なくなるのかなぁ。
configureのオプション、スクリプトを眺めても、IPv6を非対応にする
ものは解りませんでした…

OSのネットワーク関連ですが、
 ipv6 のモジュールは読込んでいません。
 rpm の bind は 8.x がデフォルトで入れてありますが、
 DNSはDBとは別のサーバに立ち上げています。

PHP等のsocketを使用しない場合、エラーは強引に無視して
運用もできるのですが、
Tomcat とJDBCで接続できない為、PostgreSQL 7.3に戻してしまいました。

 -----------------------------------------
      鈴木 徹 (SUZUKI Toru)
      KENWOOD ENGINEERING CORPORATION
      E-mail:t_suzuki @ kenwood-eng.co.jp
 -----------------------------------------



pgsql-jp メーリングリストの案内