それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

OPNSense でSNATする。

OPNSense でSNATする。

opnsense で特定のネットワーク同士を特定のインタフェースで接続して、中間ネットワークを経由してSNATする。

SNATは「ファイアウォール」の「NAT」の「外向き」になる。

通常であれば、PPPoEやVPNなどで自動生成だから、ここを書くこととがない。

SNATを明示するので、ハイブリッド(手動設定ー>自動生成)を選択する。

明示的にSNATしたいのだから、送信元(アドレス・インタフェース・ネットワーク、またはOPSENSE管理のネットワーク名)を指定して、送信先(アドレス・ネットワーク)を指定する。

ただし、このSNAT経路は、対象となるパケットが通過してないと適用されない。当たり前ですが。SNATだけ考えていると、ルーティングを見落して混乱するかもしれない。ルーティングテーブルが正しく適用されてパケットが通過するからSNATされる。

ルート設定(なければ作る)

SNATの先にパケットが送信されるようにルーティングのルートが必要になる。

SNATなどを明示する場合は入れると思う。

通常はDHCPで作られているが、DHCPを使わないネットワークだからこそSNATが必要になるわけですし。

GW設定(無ければ作る)

ルートを作るために、GW設定も必要

GWはネットワークの先にあるIPを指定する。Farだと更にその先なので、通常はリンクローカル

パケット疎通設定(なければ作る)

SNATするために、経路を通る、経路を作ったとしてもパケットが止まっていては意味がない。

ファイアウォールのルールでパケットが通れるように許可をだす。

まとめ

ルートをSNATする。とは、ルートを作り、パケットを通し、通ったパケットをSNATする。これがパケットの流れなので。

それぞれの手順が必要になる。OPNSenseの場合「ゲートウェイ」をベースに管理するので、ゲートウェイの設定が詰まりポイントになる。

中間のネットワークを挟む場合、相手GWに投げないといけない。

参考資料

https://www.zenarmor.com/docs/network-security-tutorials/how-to-configure-opnsense-nat#outbound-nat-for-accessing-a-remote-service-via-specific-external-ip-address