自宅でNW機器(Ciscoとか)を利用する人ならやるような設定なのかな?よくわかっていませんが、ふと「やってみようかなー」と思ったので試してみました。NW機器を購入したは良いが「普段から触らないとなー」と思ったのもあります。
※注意)とりあえず動作確認ができる程度の設定しか行っていません。細かい設定やセキュリティ面などの調査は端折ってるのでこのままの設定を自宅の回線とうで行わないで下さい。特にルータ側ではACLの設定などは行っていないません。
環境
- Cisco 1812J
- C181X Software (C181X-ADVIPSERVICESK9-M), Version 15.1(4)M12a
- PPPoEクライアント
- raspberry Pi 3 Model B
- raspbian
- PPPoEサーバ
- Apple USB Ethernet アダプタ
- raspiのeth1として使用
- LANケーブル1本
- Cisco1812Jとraspberry piを直結
設定
raspberry pi
- フォワーディングを許可
(設定ファイルを編集)※デフォルト設定との差分です
# diff -U 0 /etc/sysctl.conf{.org,}
--- /etc/sysctl.conf.org 2019-07-10 09:08:56.980935323 +0900
+++ /etc/sysctl.conf 2019-07-17 20:50:08.706074125 +0900
@@ -28 +28 @@
-#net.ipv4.ip_forward=1
+net.ipv4.ip_forward=1
(設定反映)
root@raspberrypi:/etc/ppp# sysctl -p
- パッケージのインストール
# apt-get install pppoe
- pppoeサーバの設定
(設定ファイルを編集)※デフォルト設定との差分です
root@raspberrypi:~# diff -U0 /etc/ppp/options{.org,}
--- /etc/ppp/options.org 2018-11-04 21:56:54.000000000 +0900
+++ /etc/ppp/options 2019-07-23 21:31:35.007763544 +0900
@@ -150 +150 @@
-#+chap
++chap
@@ -207 +207 @@
-#proxyarp
+proxyarp
@@ -305 +305 @@
-#persist
+persist
@@ -309 +309 @@
-#maxfail
+maxfail 0
(chapのパスワードファイル) root@raspberrypi:~# cat /etc/ppp/chap-secrets Secrets for authentication using CHAP client server secret IP addresses testuser01 * "passhoge01" 192.168.111.101
- pppoeサーバの起動
# pppoe-server -I eth1 -L 10.0.0.1 -O /etc/ppp/options
Cisco1812J
- 設定抜粋
- int fa 0とint dialer 1の2つを設定します
- callinをつけることで単一方向の認証になるようです
- 認証方式はchapにしています
- papは平文なので利用しない
- MTUは1492/MSSは1452に設定しています。イーサネットのLAN内なのでこれで問題ないはずです(多分)
- NTTフレッツ光NEXTなどの場合はMTU1454/MSS1414に設定する必要があるぽそうです(なんとなくわかったけどうまく説明できない)
- L2TP接続が行われている場合などにそのヘッダー分をマイナスする必要がある模様
Router#show running-config ~~snip~~ ! interface FastEthernet0 no ip address duplex auto speed auto pppoe enable group global pppoe-client dial-pool-number 1 ! ~~snip~~ ! interface Dialer1 mtu 1492 ip address negotiated encapsulation ppp ip tcp adjust-mss 1452 dialer pool 1 dialer idle-timeout 0 dialer-group 1 ppp authentication chap callin ppp chap hostname testuser01 ppp chap password 0 passhoge01 ppp ipcp dns request accept ! ~~snip~~
確認
raspberry pi側- /var/log/messagesにログが出力されます
root@raspberrypi:~# tail -F /var/log/messages Jul 23 21:04:28 raspberrypi pppd[753]: pppd 2.4.7 started by root, uid 0 Jul 23 21:04:28 raspberrypi pppd[753]: Using interface ppp0 Jul 23 21:04:28 raspberrypi pppd[753]: Connect: ppp0 <--> /dev/pts/2 Jul 23 21:04:30 raspberrypi kernel: [ 481.630857] PPP BSD Compression module registered Jul 23 21:04:30 raspberrypi kernel: [ 481.652917] PPP Deflate Compression module registered Jul 23 21:04:30 raspberrypi pppd[753]: local IP address 10.0.0.1 Jul 23 21:04:30 raspberrypi pppd[753]: remote IP address 192.168.111.101Cisco1812J側
- 面白いのはshow pppoe sessionで確認できる「RemMAC」です。今回はAppleのイーサネットアダプターを利用しているのでベンダコード「645a.ed」を調べると「Apple, Inc.」と出てきます。ご自身のご家庭等で設定するとISPとの間の対向のNW機器のベンダーがわかることになります。「だからなんだ」となるかもしれませんがちょっと、普段のローカルNWから飛び出してインターネット側の世界に触れたような感覚です。
Router#show ip int brief Interface IP-Address OK? Method Status Protocol BRI0 unassigned YES NVRAM administratively down down BRI0:1 unassigned YES unset administratively down down BRI0:2 unassigned YES unset administratively down down Dialer1 192.168.111.101 YES IPCP up up FastEthernet0 unassigned YES NVRAM up up FastEthernet1 unassigned YES NVRAM administratively down down FastEthernet2 unassigned YES unset up down FastEthernet3 unassigned YES unset up down FastEthernet4 unassigned YES unset up down FastEthernet5 unassigned YES unset up down FastEthernet6 unassigned YES unset up down FastEthernet7 unassigned YES unset up down FastEthernet8 unassigned YES unset up down FastEthernet9 unassigned YES unset up down Virtual-Access1 unassigned YES unset up up Virtual-Access2 unassigned YES unset up up Vlan1 unassigned YES unset up down Router#
Router#show pppoe session
1 client session
Uniq ID PPPoE RemMAC Port VT VA State
SID LocMAC VA-st Type
N/A 1 645a.edf5.fae2 Fa0 Di1 Vi2 UP
0022.5530.880e UP
Router#