IPv6 の誘惑

<< 戻る   トップ >>

Tomcat を 9.0.21-1 に更新したところ、データベースとの接続がうまくいかなくなったりしたのだが、もう一つ見つかった問題が manager アプリケーションにアクセスできない、という問題だ。

今回の更新で、manager アプリへのアクセス設定が localhost のみが許可される設定に変わった模様。webpass/manager/META-INF 下の context.xml を書き換えてやる必要がある(Manager App How-To)。とりあえず全ての IP アドレスを受け入れるパターン “\d+\.\d+\.\d+\.\d+” に設定した。

ところが、家LAN のプライベートアドレスからはアクセスできるのに、インターネットから(正確には、ルータ経由)はアクセスできない。具体的には、家LAN に接続しているホストから、http://192.168.24.10:8080/manager/ では接続できるのに、http://museo-anonimo.jp:8080/manager/ には接続できない。museo-anonimo.jp はグローバルアドレスなので、ルータを経由する。物理的には museo-anomimo はルータの DMZ に接続されているので、ルータを経由して接続されるわけだ。一方、プライベートアドレスでアクセスする場合は直結となる。

接続できない原因を考える場合、この経路の違いが原因だと考えられるのだが、直結だろうとルータ経由だろうと、アクセス時の IPアドレスはパターン "\d+\.\d+\.\d+\.\d+”に一致する。どちらの経路でも接続できるはずなのだ。

幸い、ヒントがあった。パターン "\d+\.\d+\.\d+\.\d+”に変更する前、ローカルホストのアクセスのみを許す設定にパターンは、"127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" となっていて、IPv4 と IPv6 の併記になっていたのだ。もしかして、ルータ経由の場合は IPv6 でアクセスしているのではないか。そこで、ホストとして使っている ingres7 の IPv6 アドレスからのアクセスを許可したところ、見事に開通である。

これまでさんざん IPv4 は使ってきた。なにしろ /etc/hosts が現役だった頃からの老頭児である。ついに IPv6 を記述する機会を得た。万感の想いを乗せて汽車が往く。


作成: 2019-06-30 08:04:12更新: 2019-06-30 08:04:12
http://museo-anonimo.jp/nanban/?id=1424,http://museo-anonimo.jp/nanban/tr/1424