FortiGate で PPPoE 設定をする手順を説明します。
想定ネットワーク構成
以下のネットワーク構成を想定します。

FortiGate について
- 型番:FortiGate 60E
- ファームウェアバージョン:v6.0.6 build0272 (GA)
要件
クライアントAおよびB間で通信できるよう FortiGate にて PPPoE の設定を実施する。
なお PPPoE サーバ (Cisco ルータを使用) のコンフィグとして以下を設定している前提とします。
username pppoe@example.com password hogehoge
bba-group pppoe PPPOE-GROUP1
virtual-template 1
interface GigabitEthernet8
ip address 120.130.140.254 255.255.255.0
duplex auto
speed auto
pppoe enable group PPPOE-GROUP1
interface Virtual-Template1
mtu 1454
ip unnumbered GigabitEthernet8
peer default ip address pool POOL1
ppp authentication chap
ip local pool POOL1 120.130.140.1
ip route 120.130.140.2 255.255.255.255 120.130.140.1
PPPoE の設定手順
GUI で設定する場合の手順
PPPoE の設定はインターフェースの設定画面で実施します。
wan1 インターフェースの設定画面にて以下の通り設定します。
- アドレス
- アドレッシングモード → PPPoE
- ユーザ名 → PPPoE 用のユーザ名
- パスワード → PPPoE 用のパスワード
- Unnumbered IP接続 → 0.0.0.0(デフォルト値)
- 初期ディスクタイムアウト → 1(デフォルト値)
- 初期PADTタイムアウト → 1(デフォルト値)
- サーバからデフォルトゲートウェイを取得 → ON
- ディスタンス → 5(デフォルト値)
- 内部DNSを上書き → OFF

PPPoE の設定は以上で完了です。
設定後、wan1 インターフェースの設定画面にて以下の項目を確認してください。
- ステータス → 「接続済み」となっていること
- 取得したIP/ネットマスク → IPアドレスを取得できていること
- デフォルトゲートウェイ → ゲートウェイを取得できていること

「サーバからデフォルトゲートウェイを取得」について
この項目を ON にすると自動で PPPoE サーバからデフォルトゲートウェイが取得されてルーティングテーブルに保存されます。
FGT # get router info routing-table all
Routing table for VRF=0
Codes: K - kernel, C - connected, S - static, R - RIP, B - BGP
O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default
S* 0.0.0.0/0 [5/0] via 120.130.140.254, ppp1 # ← 自動で取得したデフォルトゲートウェイ
C 10.10.1.0/24 is directly connected, internal1
C 120.130.140.1/32 is directly connected, ppp1
C 120.130.140.254/32 is directly connected, ppp1
「サーバからデフォルトゲートウェイを取得」を OFF とした場合は手動でスタティックルートを設定する必要があります。
CLI で設定する場合の手順
CLI で PPPoE の設定をする場合は、インターフェースの設定項目にて設定します。
設定コマンドは以下の通りです。
config system interface
edit "wan1"
set role wan
set mode pppoe
set username "pppoe@example.com"
set password "hogehoge"
set ipunnumbered 0.0.0.0
set disc-retry-timeout 1
set padt-retry-timeout 1
set defaultgw enable
set distance 5
set dns-server-override disable
next
end
各項目の意味は以下の通りです。
config system interface
edit "wan1"
set role wan # ← ロール
set mode pppoe # ← アドレッシングモード
set username "pppoe@example.com" # ← PPPoE用のユーザ
set password "hogehoge" # ← PPPoE用のパスワード
set ipunnumbered 0.0.0.0 # ← Unnumbered IP接続
set disc-retry-timeout 1 # ← 初期ディスクタイムアウト
set padt-retry-timeout 1 # ← 初期PADTタイムアウト
set defaultgw enable # ← サーバからデフォルトゲートウェイを取得
set distance 5 # ← ディスタンス
set dns-server-override disable # ← 内部DNSを上書き(無効)
next
end
PPPoE の設定は以上で完了です。
設定後、以下コマンドで wan1 の状態が想定通りであることを確認します。
FGT # get system interface physical
#(略)
==[wan1]
mode: pppoe
ip: 120.130.140.1 255.255.255.255
ipv6: ::/0
status: up
speed: 1000Mbps (Duplex: full)
#(略)
ルーティングテーブルも確認しておきます。
FGT # get router info routing-table all
Routing table for VRF=0
Codes: K - kernel, C - connected, S - static, R - RIP, B - BGP
O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
* - candidate default
S* 0.0.0.0/0 [5/0] via 120.130.140.254, ppp1 # ← 自動で取得したデフォルトゲートウェイ
C 10.10.1.0/24 is directly connected, internal1
C 120.130.140.1/32 is directly connected, ppp1
C 120.130.140.254/32 is directly connected, ppp1
ポリシーの設定
各種の通信を許可するポリシーを追加します。
LAN から WAN への通信を許可するポリシー
クライアントAからクライアントBへの通信をするためのポリシーを追加します。
ポリシーの内容は以下の画像の通りとします。

PPPoE サーバには 10.10.1.0/24 へのルーティングを設定していないため、FortiGate で NATを設定しておきます。
WAN から LAN への通信を許可するポリシー
クライアントBからクライアントAへの通信をするためのポリシーを追加します。
FortiGateで 120.130.140.2 宛の通信を受信したら宛先 NAT をして 10.10.1.3 に変換するように設定することにします。
まず宛先 NAT 用のバーチャル IP を作成します。
[ポリシー&オブジェクト] → [バーチャルIP] の画面で [新規作成] を選択します。
設定内容は以下画像の通りとします。

次にポリシーを設定します。内容は以下画像の通りとします。

以上でポリシー設定は完了です。
疎通確認
以下の2方向の Ping 疎通を確認します。
- クライアントA → クライアントB
- クライアントB → クライアントA

クライアントA からの Ping

クライアントB からの Ping

双方向で Ping 疎通が取れることが確認できました。
メモ
- PPPOE 接続ができないとき、ONU を再起動すると接続できるようになるケースがある
―――――――――――――
次のステップ → FortiGate と Cisco ルータとの間で IPsec VPN を構築する
―――――――――――――