My Ciscoルータのインターネット(PPPoE)接続設定 【レオネット編、フレッツ光編】
Table of Contents
概要
去年に Cisco C841Mルータ (Amazonリンク) を購入して インターネット接続用ルータとして使用しています。
もともとレオ○レス回線(レオネット) 環境で利用していましたが、 引っ越しがあり現在はフレッツ光環境です。
その2環境でのCiscoルータのConfigを以降セクションで書き記します。
共通設定
C891M は下記の通り WAN側インターフェイスとして GigabitEthernet × 2、 LAN側インターフェイスとして GigabitEthernet × 4の構成です。
今回は
- GE0 … 無線AP接続用
- GE1 … デスクトップPC接続用
- GE2 … Nintendo Switch 接続用
- GE3 … 未使用 (ハブ導入予定)
- GE4 … 未使用
- GE5 … インターネット接続用
として各ポートを設定します。
論理構成図は下記のとおりです。
- ローカル側IPアドレスは 192.168.10.0/24 とします
- 管理用のルータIPアドレスは 192.168.10.254 とします
- PCなど各種デバイスには DHCPでIPアドレス (.1~.99)を割り当てます
- NAPT(Network Address and Port Translation) を使って PCやその他デバイスがインターネット接続できるようにします
VLAN1 設定
interface Vlan1
ip address 192.168.10.254 255.255.255.0
PortFast 設定
interface range GigabitEthernet0/0-3
spanning-tree portfast
GE0,1,2,3 に対して PortFast を有効にします。
PortFast が無効になっている状態だと、PCを起動した際に DHCPによるIPアドレス取得、 通信可能まで時間がかかります。
PC、サーバ、ルータ等が接続するアクセスポートにこのPortFastの設定をするのが一般的です。 (引用: https://www.infraexpert.com/study/stpz7.html)
DHCP 設定
ip dhcp excluded-address 192.168.10.100 192.168.10.254
!
ip dhcp pool local
network 192.168.10.0 255.255.255.0
default-router 192.168.10.254
dns-server 8.8.8.8
lease 0 12
!
- DHCPによるIP割り当てから 192.168.10.100~192.168.10.254 を除外します
- DHCPプール "local" を作成します
- 192.168.10.0/24 の範囲でIPアドレスを割り当てます (上記制約より末尾 .1~.99 が割り当て範囲)
- デフォルトゲートウェイは ルータ自身とします
- DNSサーバは 8.8.8.8 (Google Public DNS) とします
- 割り当てたIPアドレスの有効期限は 12時間とします
設定 (レオネット編)
レオネット はレオ○レス入居者が使えるインターネットサービスです。 このように壁にLANケーブルがにゅっと出ています。
本来はこれにレオ○レス備え付けの Life Stick を接続して テレビ画面上でYoutube を見たり Wi-Fi機能を利用したりできます。
Life Stickは使わず、このLANケーブルを C841Mのルーテッドポート(GE5) に接続します。
ルーテッドポート(GE5) 設定
interface GigabitEthernet0/5
ip address dhcp
※レオネット・壁から伸びているLANケーブルについて
- 少なくとも自分の環境では DHCPによるIPアドレス取得は 1つまでみたいです
- 入手したIPアドレスはあくまで "レオネットのローカルエリア内IPアドレス" であり、グローバルIPアドレスではありません
- 接続後 レオネット専用ベージにて入居者情報を入力することで インターネット接続が可能となります
ルーティング 設定
ip route 0.0.0.0 0.0.0.0 dhcp
- デフォルトゲートウェイとして DHCPサーバ(レオネット) から貰った情報を利用する
NAPT 設定
access-list 1 permit 192.168.10.0 0.0.0.255
ip nat inside source list 1 interface GigabitEthernet0/5 overload
!
interface GigabitEthernet0/5
ip nat outside
!
interface Vlan1
ip nat inside
!
- NAT変換対象となるアドレス範囲(192.168.10.0/24) を ACL1 に記述します
- NAPT設定。ACL1 と GE5インターフェイスを関連付けます
- GE5 を外部ネットワークに指定します
- Vlan1 を内部ネットワークに指定します
設定 (フレッツ光編)
まともな回線になった現在の物理構成図を載せます。
レオネット環境との違い、考慮する点は下記のとおりです。
- レオネット環境はWAN側ポート (GE5) はDHCPクライアントの設定でしたが、 フレッツ光環境は PPPoE(Point-to-Point Protocol over Etherne) 設定を入れます
- レオネット環境と違い、WAN側ポートにはグローバルIPアドレスが割り当てられるため、 セキュリティ設定が必要です
ルーテッドポート(GE5) 設定
interface GigabitEthernet0/5
pppoe enable group global
pppoe-client dial-pool-number 1
- GE5 にて PPPoE 設定を有効化します
- GE5 と dial-pool-number が1の論理インターフェイス(=Dialer 1) を関連付けます
PPPoE 設定
interface Vlan1
mtu 1454
!
dialer-list 1 protocol ip permit
!
interface Dialer1
ip address negotiated
mtu 1454
encapsulation ppp
dialer pool 1
dialer-group 1
ppp authentication chap callin
ppp chap hostname xxxxxxxx@xxx.net
ppp chap password 0 yyyyyyyy
- MTU を 1414バイトとします
- IPトラフィックを対象とする dialer-list 1 を設定します
- Dialer 1にて下記設定を行います
- PPPoE セッション確立時にIPアドレスを要求します
- MTU(Maximum Transmission Unit) を 1454バイトとします
- PPPでカプセル化を行います
- Dialer 1の dial-pool-numberを 1に指定します
- Dialer 1から出ていくトラフィックとして dialer-list 1 を設定します
- ISP(Internet Service Provider) と行う認証として CHAP (Challenge-Handshake Authentication Protocol) を使用します
- CHAP認証のホスト名を記載します
- CHAP認証のパスワードを記載します
ルーティング 設定
ip route 0.0.0.0 0.0.0.0 Dialer1
- デフォルトゲートウェイとして Dialer 1を指定します
NAPT 設定
access-list 1 permit 192.168.10.0 0.0.0.255
!
ip nat inside source list 1 interface Dialer1 overload
!
interface Dialer1
ip nat outside
!
interface Vlan1
ip nat inside
- NAT変換対象となるアドレス範囲(192.168.10.0/24) を ACL1 に記述します
- NAPT設定。ACL1 と Dialer 1を関連付けます
- Dialer 1 を外部ネットワークに指定します
- Vlan1 を内部ネットワークに指定します
セキュリティ 設定
前述の通り WAN側ポートにはグローバルIPアドレスが割り当てられるため、 セキュリティ設定が必要となってきます。
今回は Ciscoの CBAC(Context-Based Access Control) という機能を使います。 CBAC を使うことで、
- LANから WANに向かう通信、およびその戻りの通信 を許可する
- 外部から開始された通信は一部を除いて拒否する
といったFirewall 同等のステートフルな制御が可能となります。 (参考: https://www.infraexpert.com/study/aclz15.html)
Config は下記の通りです。
ip access-list extended EX
permit icmp any any echo
!
ip inspect name CBAC tcp
ip inspect name CBAC udp
ip inspect name CBAC ftp
ip inspect name CBAC icmp
!
interface Dialer1
ip access-group EX in
ip inspect CBAC out
!
- echo要求のみを許可する ACL(EX) を作成します
- 検査対象のプロトコルとして TCP,UDP,FTP,ICMP を指定するルール "CBAC" を作成します
- Dialer 1 に入ってくる通信に対して ACL(EX) を適用します
- Dialer 1 から出ていく通信に対して CBAC を適用します
これで下図のように、LANからWANに向かう通信①、およびその戻りの通信②は CBACによって許可され、外部から開始された通信③は ACL(EX)によって (echo要求以外は) 拒否されます。
まとめ
最後にレオネット環境とフレッツ光環境の Config 差異を載せます (左:レオネット、右:フレッツ光)。
https://i.imgur.com/O147sMq.png
Config 量にもでていますが、フレッツ光環境の構築は割と大変でした。 久しぶりにPPPoEの設定をしたり、初めて CBAC を利用したりと苦戦しましたが勉強になりました。
その分 回線速度アップやグローバルIPアドレスゲットなど、 レオネット環境と比べてリターンが大きいです。
今後はせっかくグローバルIPを取得できたので、何かしらWebサーバを公開できたらなと思っているところです。