忍者ブログ

えいりあす

Playframeworkへのアクセスが同じIPアドレスになってしまう

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

1. 無題

こんばんはお久しぶりです。
多重起動のツールがダウンロード数700くらいいったのはいいのですが、
駅でBANされたなどの報告があるみたいなのですが、自分はBANないのですが、
karakasaさんはBANなど大丈夫でしょうか?
もしあまりにもBANが多い場合は公開停止するかもです。
一応報告したかったのでしました。

2. 無題

1個ツールのアイディアがあって、装備などのツールの相場を一覧表示するツールなど作れたら
結構便利かなと思うのですがどうでしょうか?

3. 無題

↑ 一部日本語おかしくなりました。装備などの相場を一覧表示するツール。

4. 無題

>ぽんさん
こんばんは:)
僕はPCでプレイすること自体あまりないので・・・
相場を調べるツールですか~なかなか難しそうですけど
信憑性のあるデータを得られるのでしたら、すごく便利だと思います!

ただいまコメントを受けつけておりません。

Playframeworkへのアクセスが同じIPアドレスになってしまう

Playframeworkでしこしこ作っていたアプリケーションが大体形になったので、
自鯖へデプロったところ、アクセスがすべて同一IPになってしまったので対策をメモ。



■初めのサーバ構成
dockerコンテナ

↓ port 80->80 /tcp

Nginx

↓ port 80->9000 /tcp
↓ proxy_pass http://localhost:9000

playframeworkアプリケーション

■修正後のサーバ構成
nginx
↓ 1.
↓ port 80->8080 /tcp
↓ proxy_pass http://<コンテナのIPアドレス>:8080

dockerコンテナ

↓ port 8080->80 /tcp

nginx 
↓ 2.
↓ port 80->9000 /tcp
↓ proxy_pass http://localhost:9000

playframeworkアプリケーション

上記のように修正しました。

つまり、コンテナ内で動作するアプリケーションに
到達するパケットの送信元IPアドレスが書き換えられてしまう
ことが主因だったわけです。

なので、コンテナにパケットが到達する前に
リバースプロキシとしてnginxをかましてやり、
1.の時点でX-Real-IP$remote_addrを格納、
2.の時点でX-Forwarded-For$proxy_add_x_forwarded_forを格納するようにします。

そうすることで、playframeworkアプリケーションの、
play.mvc.Http.Context.current().request().getHeader("X-Forwarded-For");
で、アクセス元のIPアドレスを取得することができるわけです。

原因がわからなくて丸一日悩んでました・・・(小声)

拍手[0回]

コメント

1. 無題

こんばんはお久しぶりです。
多重起動のツールがダウンロード数700くらいいったのはいいのですが、
駅でBANされたなどの報告があるみたいなのですが、自分はBANないのですが、
karakasaさんはBANなど大丈夫でしょうか?
もしあまりにもBANが多い場合は公開停止するかもです。
一応報告したかったのでしました。

2. 無題

1個ツールのアイディアがあって、装備などのツールの相場を一覧表示するツールなど作れたら
結構便利かなと思うのですがどうでしょうか?

3. 無題

↑ 一部日本語おかしくなりました。装備などの相場を一覧表示するツール。

4. 無題

>ぽんさん
こんばんは:)
僕はPCでプレイすること自体あまりないので・・・
相場を調べるツールですか~なかなか難しそうですけど
信憑性のあるデータを得られるのでしたら、すごく便利だと思います!

プロフィール

HN:
忘れ傘
性別:
男性
自己紹介:
Linux初心者
知識が浅すぎるので勉強中
あっぷろーだ:wasuregasa
ついったー:@__TIMESTAMP__

P R

最新コメント

[03/27 NONAME]
[03/26 ぽん]
[03/26 ぽん]
[03/17 ぽん]
[03/05 通りすがりのR]