/home/tnishinaga/TechMEMO

日々行ったこと、面白かったことを書き留めます。

VyOS 1.4で特定デバイスだけPPPoEでアクセスできるようにする

背景

技術的な興味からIPoE + ds-liteの接続を普段づかいように残しつつ、特定機器だけPPPoE接続にする方法を調査して設定してみました。 その方法を備忘録として残しておきます。

環境

  • マシン
    • Shuttle DS68U
      • CPU: Intel(R) Celeron(R) CPU 3855U @ 1.60GHz
      • Memory: 8GB
      • Storage: 120GB
  • VyOS
    • 1.4-rolling-202212310809

やること

主に以下のページを参考にして進めました。

yosida95.com

大まかには以下を行えば良いようです。

  • 特定デバイスをpolicy tableに登録する
  • table単位でstatic routeの設定をしてpppoe経由でインターネットへ繋がるようにする

前提として、pppoeの設定は済んでおり、pppoe0として見える状態になっているものとします。

1. ipアドレスを固定する

今回はIPアドレス指定でtableを作りたかったので、DHCPIPアドレスを固定することにしました。

特定デバイスMACアドレスを調べ、dhcp static mappingでIPアドレスを固定します。

docs.vyos.io

set service dhcp-server shared-network-name LAN subnet 192.168.XXX.0/24 static-mapping デバイス名 ip-address '192.168.XXX.100'
set service dhcp-server shared-network-name LAN subnet 192.168.XXX.0/24 static-mapping デバイス名 mac-address 'デバイスのMACアドレス'

2. policyをつくる

static route設定を適応するデバイスを入れたテーブルを作ります。

set policy route game interface 'デバイスの接続しているインターフェース'
set policy route game rule 1 set table '1'
set policy route game rule 1 source address '192.168.XXX.100/32'

3. pppoeへのstatic route設定をする

policy部で作ったtableに対してstatic routeの設定を入れます。

set protocols static table 1 route 0.0.0.0/0 interface pppoe0

4. commitして様子を見る

これで commit すれば特定デバイスの通信だけがpppoe経由で行われるようになるはずです。

うまく設定ができていれば特定デバイスグローバルIPアドレスが設定前から変わっているはずです。

参考サイト