FortiGateでVLANタグ有無ポートを共存させる方法

FortiGateでVLANタグありとなしのポートを共存させる方法をまとめます。先日ちょっとはまっちゃいました。
VLANのポイント振り返り
VLANとは…という説明は割愛しますが、VLANタグが付くのか付かないのかは大変重要なポイントです。
一般的なスイッチでポートをTrunkモードにするとNative VLANを除いてタグが付きます。タグが付いたフレームは受けてでもタグが付いていると認識される必要があります。つまり、受け手のポートもTrunkモードである必要があるのです。
デフォルトではVLAN1がNative VLANであることがほとんどで、VLAN1のみTrunkポートでもタグ付けされません。
と言ったところが今回のポイントです。
FortiGate的には
HardwareスイッチにSVI(Switch Virtual Interface)をぶら下げることでタグ付きとして扱えます。また、Softwareスイッチを使用することでタグ無しのフレームを扱えます。
今回のお話は、HardwareスイッチとSoftwareスイッチを組み合わせて、ひとつのFortiGateの中で、タグ付けするポートとタグ付けしないポートを共存させることです。
同じVLANが、物理的にFortiGateを経由して敷設されている場合に必要となる(かも知れない)設定方法です。例えば、LAN1ポートからタグなしで受け取って、LAN3ポートからタグありで転送する、もしくはその逆です。
設定方法
頑張ってイメージ図を作成しました。

まずはHardwareスイッチを作成して、そこにタグありで受け取りたい物理ポートとVLANインターフェースを作成して関連付けます。今回はVLAN10です。
次に、Softwareスイッチを作成して、そこにタグなしで扱いたい物理ポートと先ほど作成したVLANインターフェースを関連付けます(Memberとして追加します)。
このVLANのIPアドレスはSoftwareスイッチに割り振ります。
下図のようになります。

通信の様子
右下のパソコンからCorporate Systemへの通信は、パソコンからタグなしで送信されます。パソコンはタグをつけれませんので。そのフレームはSoftwareスイッチに入り、(イメージ的には)VLAN10の論理的なインターフェースに入り、Hardwareスイッチへと抜け、タグがつけられてL2SWに転送されます。L2SWはタグを外してCorporate Systemが接続されているAccessポートへ転送します。