LoginSignup
5
6

More than 5 years have passed since last update.

VyOSでPPPoEに接続してポート開放メモ

Last updated at Posted at 2018-04-04

はじめに

IPoE方式のインターネット接続にしたらグローバルIPアドレスがもらえなくなったのでPPPoEで接続するルーターを作ろうと思ってこの記事を書きました。PPPoEだとグローバルIPアドレスがもらえるらしい。

構成

インターネット ---- eth0(PPPoE):VyOS:eth1 ----- 自宅ネットワーク(192.168.1.0/24)

VyOSはHyper-V上に作ります。
DHCPサーバやDNSサーバは別で動かしているのでここでは構成しません。

Hyper-Vで仮想マシンを作成

仮想マシンを普通につくる(省略)
UEFI(第二世代)だとなぜかうまくブートしないのでBIOS(第一世代)で作るとよく動く。

仮想マシンを普通に作るとネットワークアダプターが1つしか追加されないので仮想マシンの設定からもう1つ追加しておきます。
インターネット(PPPoE用)と自宅ネットワークに接続する2つです。

PPPoEの設定

接続

まずは設定モードに切り替え

$ configure

そして、PPPoEの設定を以下のようにします。

# set interfaces ethernet eth0 pppoe 0
# set interfaces ethernet eth0 pppoe 0 user-id [ユーザー名]
# set interfaces ethernet eth0 pppoe 0 password [パスワード]
# set interfaces ethernet eth0 pppoe 0 default-route auto
# set interfaces ethernet eth0 pppoe 0 name-server auto
# commit
# save
# exit

[ユーザー名]と[パスワード]のところはプロバイダから発行されたものを入力します。

確認

$ show interfaces pppoe

と入力して

RX:  bytes    packets     errors    dropped    overrun      mcast
       1199670       3050          0          0          0          0    
TX:  bytes    packets     errors    dropped    carrier collisions
        643157       3331          0          0          0          0

こんな感じのが出れば多分設定完了・・・のはず。

NATの設定

自宅ネットワーク -> インターネット

自宅ネットワークの端末(192.168.1.0/24)がVyOSを経由してインターネットに接続するための設定。
configureコマンドで設定画面に入り、

# set nat source rule 10 translation address masquerade
# set nat source rule 10 source address 192.168.1.0/24
# set nat source rule 10 outbound-interface pppoe0
# commit
# save

自宅ネットワーク -> インターネットへのNATがされるようになったので、VyOS経由でWebページを見たりすることができます。ruleのあとの数字は大きいほど優先度が高い気がします。(要検証)

インターネット -> 自宅ネットワーク(ポート開放)

ポート開放をしてサーバなどをインターネットに公開する場合のNAT設定。
インターネット側からTCP 25565番へのアクセスがあった場合、192.168.1.9:25565にポートフォワードする設定をします。

# set nat destination rule 1 destination port 25565
# set nat destination rule 1 protocol tcp
# set nat destination rule 1 translation address 192.168.1.9
# set nat destination rule 1 translation port 25565
# set nat destination rule 1 inbound-interface pppoe0
# commit
# save

ファイアウォールの設定

このままだとセキュリティ的によろしくないのでファイアウォールを設定します。

VyOSルーターに対するファイアウォール

インターネット側からVyOSに対するファイアウォールを設定します。
VyOSから接続されるコネクションに対しては許可をしますが、インターネット側からのコネクションについては許可しない設定にします。

# set firewall name OUTSIDE_LOCAL default-action drop
# set firewall name OUTSIDE_LOCAL rule 10 action accept
# set firewall name OUTSIDE_LOCAL rule 10 state established enable
# set firewall name OUTSIDE_LOCAL rule 10 state related enable
# set interfaces ethernet pppoe0 firewall local name OUTSIDE_LOCAL
# commit
# save

インターネット側からVyOSルーターを経由する接続に対するファイアウォール

VyOSを経由して、インターネット側からの公開されているサーバへの接続を許可する設定です。
ポート開放でTCP 25565をポートフォワードする設定にしたので、TCP 25565を許可する設定をします。

# set firewall name OUTSIDE_IN default-action drop
# set firewall name OUTSIDE_IN rule 10 action accept
# set firewall name OUTSIDE_IN rule 10 state established enable
# set firewall name OUTSIDE_IN rule 10 state related enable
# set firewall name OUTSIDE_IN rule 20 action accept
# set firewall name OUTSIDE_IN rule 20 protocol tcp
# set firewall name OUTSIDE_IN rule 20 destination port 25565
# set interfaces ethernet pppoe0 firewall in name OUTSIDE_IN
# commit
# save

まとめ

IPoE接続でインターネットの速度を速くするのと引き換えにグローバルIPアドレスを失ったが、VyOSでソフトウェアルーターを作ればグローバルIPアドレスを取得してサーバを公開できますね。PPPoEなので速度はお察しですけど。

参考

Vyattaでフレッツ光ネクストにPPPoE接続する
VyOS の基本設定 (DHCP/DNS/NAT/Firewall/その他)

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6