Laravel5.3でプロキシサーバー経由のアクセスの送信元IPを取得する。

Heroku+Laravel5.3の環境で、送信元IPの取得するミッション。
Heroku経由のRequestに対して、

$request->ip()

をしてもRequest毎に違うIPが返ってきてしまい、 herokuでアプリケーション側でIPフィルタリング的な処理ができないの…? と一瞬悩んだのでメモ。
どうやらプロキシサーバーやロードバランサーを経由すると書き換わってしまう模様。 以下解決策。

tips

How to Configure Symfony to Work behind a Load Balancer or a Reverse Proxy (current)

なるほど setTrustedProxies() をつかうといいらしい。

$request::setTrustedProxies([Request::ip()]);
sprintf($request->ip());

とすると、

should not be called statically in ~~

となりました。 あれれと確認すると、

use Illuminate\Http\Request;

ではなく、

use Request;

とすると無事エラーもなくなり、送信元IPを取得できました。

こちらからは以上です。