LEDE(OpenWrtのfork)をインストールしたルータ上で、WAN側ポートにPPPoE用ネットワークとDMZネットワークと2つのVLANを設定してみました。その際の作業記録です。
PPPoEルータとONU間はケーブル直結でなくても良い
ご家庭のブロードバンドルータのWAN側ポートにはONU(光回線終端装置)をイーサネットケーブルで直結しているご家庭が大半だろうと思います。
ところで、ルータとONUの間にL2スイッチを挟んでも必ず動作するのでしょうか。結論から言えば普通に動きます。PPPoEの通信は名前の通りL2レイヤで行われているものなので、スイッチが1個挟まってるだけなら動作上特に問題とはなりません。
VLAN上でPPPoEを使いたい状況
ブロードバンドルータによるファイアウォールの外側にDMZを作りたいような場合、PPPoE接続に使っているポートをVLANで使いたくなりませんか?
自分の場合、次のようなネットワークが組みたくなりました。
┏━ (1)ONU
┣━ (2)PPPoEルータ ━ 家庭内ネットワーク
┗━ (3)DMZ用ルータ
(1)と(2)が参加するPPPoE用VLANと、(2)と(3)が参加するDMZ用VLANを組み、(2)のWAN側ポートに2つのネットワークを乗せるようなイメージです。
この「PPPoE on VLAN」の設定はYAMAHAルータの一部機種で可能なようですが、家庭用ブロードバンドルータのファームウェア対応しているものは皆無だろうと思います。そんなときこそLEDE(またはOpenWrt)の出番ですね。
スイッチ側設定
今回、VLAN対応L2スイッチを(3)のDMZ用ルータに兼務させる構成を取りました。具体的には、DMZルータのLAN側ポートでVLANを切り、VLAN ID 1をPPPoE用、VLAN ID 2をDMZ用としています。また、(2)のポートは両VLANともtaggedで設定しています。
物理配線としては(3)のルータに(1)と(2)が接続されている形になり非常にスッキリしたのですが、初見でネットワーク論理構成がわかりにくいのでプロの視点ではイマイチかもしれません。
(3)DMZ用ルータ
┣━ (1)ONU
┣━ (2)PPPoEルータ ━ 家庭内ネットワーク
┗━ DMZ配下の他のマシン
PPPoE on VLANの設定
本稿の本題となる(1)のルータ側のPPPoE設定についてですが、実はLEDEのWeb管理画面だけで設定が可能です。
具体的には、Luciから「Interfaces」「WAN」「Physical Settings」「Interface」で「VLAN Interface: "eth1.1"」を選びます。その選択肢が無い場合は「Custom Interface」を選んで eth1.1
と入力します。(環境に合わせて[インターフェース名].[VLAN ID]
とする必要があります。念のため)
このように、PPPoEでのネットワークインターフェースの指定をVLANにするだけで期待通り動作します。
上記作業をコンソールから行う場合は、/etc/config/network
を編集して次のコマンドを打ちます。
uci commit network ; /etc/init.d/network
その他設定
これ以外に、(1)のルータでDMZ用のファイアウォールゾーンの作成を行い、DMZからのアクセスを一部ポートのみ開放するようなファイアウォール設定も行いました。