自宅のインターネット契約を切り替えた。
すると今まで使っていた自宅のONU兼ルーターが、契約の切り替わりに伴いルーター機能が無効になってしまった。
これは大変。
我が家には、余っているブロードバンドルーターがありません。そのため、今のまま放置するとインターネットに接続できなくなってしまう。
というわけで昔4500円で購入し、その後放置してきたCiscoの892J様をブロードバンドルーターとして構築してみることにした。
自宅の環境
切り替え前の環境は以下の通り。
どこのご家庭にもあるインターネット環境ですね。
切り替え後は以下の通り。
ONUーHUB間にブロードバンドルーター兼NAT箱として892が収まる。
というわけでちゃちゃっと構築してみた。
構築時コンフィグ
コンフィグは以下の通り。
インターネットでよそ様のコンフィグかき集めてガッチャン&張り合わせて構築した。
しかしながらどこの設定をどう拝借したのか失念してしまった。。。
参考情報をお伝え出来ずに申し訳ない。。。。
Current configuration : 3307 bytes
!
! Last configuration change at 09:31:29 JST Sat Oct 9 2021 by #####
!
version 15.1
service timestamps debug datetime msec localtime show-timezone year
service timestamps log datetime msec localtime show-timezone year
service password-encryption
!
hostname b-router
!
boot-start-marker
boot-end-marker
!
!
logging buffered 512000
enable secret 5 #####
!
no aaa new-model
!
clock timezone JST 9 0
clock calendar-valid
crypto pki token default removal timeout 0
!
!
no ip source-route
!
!
!
!
ip dhcp pool LAN
network 192.168.1.0 255.255.255.0
dns-server 192.168.1.1
default-router 192.168.1.1
domain-name test.local
!
!
ip cef
ip name-server 8.8.8.8
ip inspect name INSPECT tcp
ip inspect name INSPECT udp
ip inspect name INSPECT ftp
no ipv6 cef
!
multilink bundle-name authenticated
license udi pid CISCO892-K9 sn #####
!
!
username hoge privilege 15 secret 5 #####
!
!
!
!
ip ssh logging events
ip ssh version 2
!
!
!
!
!
!
!
interface BRI0
no ip address
encapsulation hdlc
shutdown
isdn termination multidrop
!
interface FastEthernet0
!
interface FastEthernet1
!
interface FastEthernet2
!
interface FastEthernet3
!
interface FastEthernet4
!
interface FastEthernet5
!
interface FastEthernet6
!
interface FastEthernet7
!
interface FastEthernet8
no ip address
duplex auto
speed auto
!
interface GigabitEthernet0
no ip address
ip access-group 101 in
duplex auto
speed auto
pppoe-client dial-pool-number 1
!
interface Vlan1
ip address 192.168.1.1 255.255.255.0
ip nat inside
ip virtual-reassembly in
ip tcp adjust-mss 1414
!
interface Dialer0
no ip address
no cdp enable
!
interface Dialer1
mtu 1454
ip address negotiated
ip access-group 101 in
no ip unreachables
ip nat outside
ip inspect INSPECT out
ip virtual-reassembly in
encapsulation ppp
dialer pool 1
dialer idle-timeout 0
dialer persistent
dialer-group 1
ppp authentication chap callin
ppp chap hostname #####@#####
ppp chap password 7 #####
ppp ipcp dns request accept
ppp ipcp route default
!
ip forward-protocol nd
!
!
no ip http server
no ip http secure-server
ip dns server
ip nat inside source list LAN interface Dialer1 overload
!
ip access-list extended LAN
permit ip 192.168.10.0 0.0.0.255 any
permit ip 192.168.1.0 0.0.0.255 any
!
logging esm config
access-list 101 permit udp host 210.173.160.27 eq ntp any
access-list 101 permit udp host 210.173.160.57 eq ntp any
access-list 101 permit icmp any any
access-list 101 permit gre any any
access-list 101 deny ip any any
dialer-list 1 protocol ip permit
no cdp run
!
!
!
!
!
!
control-plane
!
!
line con 0
exec-timeout 0 0
password 7 #####
logging synchronous
login
exec prompt timestamp
transport preferred none
line aux 0
exec-timeout 0 0
password 7 #####
logging synchronous
login
exec prompt timestamp
transport preferred none
line vty 0 4
password 7 #####
logging synchronous
login local
exec prompt timestamp
transport preferred none
transport input ssh
line vty 5 8
password 7 #####
login
transport input telnet
line vty 9 15
login local
transport input ssh
!
ntp update-calendar
ntp server 210.173.160.27 prefer
ntp server 210.173.160.57 prefer version 3
end
特徴
適当に作成しているところ。ダメなところも含め淡々と説明。
SSH/TELNETどちらもログイン可能なところ
外部からの接続は拒否しているものの、ローカルからはSSH/TELNETどちらでも接続可能。あかんやん。
とはいえTELNETの動作確認したいから、あえて以下の設定で運用。
まあ、グローバルIP付与されていているのに、23番ポートだけ開放しておる企業のネットワーク機器も星の数ほどあるはずだぜ★。知らんけど。
以下の設定をnoしたらtelnet無効になるのかねえ。
line vty 5 8
password 7 #####
login
transport input telnet
中→外への通信は名前付き拡張ACLなのに外→中への通信は拡張ACLである
仕様なのかバグなのか特定はできなかったけれど、外→中への通信は名前付きACLが利用できなかった。
動作に問題はないけれど、設計がぐだぐだな感じがしてちょっと嫌だ。
中→外のACL LAN
とりあえず、ローカルセグメント2つだけ許可している。家庭ネットワークの生活感?が滲み出ている。
自分ちの冷蔵庫を公開しているような恥ずかしさがすごい。
ip access-list extended LAN
permit ip 192.168.10.0 0.0.0.255 any
permit ip 192.168.1.0 0.0.0.255 any
汎用性を考えるなら10.0.0.0/8や172.16.0.0/16を加えて、192.168.0.0/16も許可するべきですな。
知らんけど。
ip access-list extended LAN
permit ip 192.168.0.0 0.0.255.255 any
permit ip 172.16.0.0 0.0.255.255 any
permit ip 10.0.0.0 0.255.255.255 any
外→中のACL 101
NTPサーバーとGRE(VPN)とICMPを許可し、他は全拒否。
GRE許可しなかったら、外部のVPNに接続できなかったため渋々設定。
本当はWANとかニャンとかそんな名前を付けたかった。
access-list 101 permit udp host 210.173.160.27 eq ntp any
access-list 101 permit udp host 210.173.160.57 eq ntp any
access-list 101 permit icmp any any
access-list 101 permit gre any any
access-list 101 deny ip any any
dialer-list 1 protocol ip permit
CBAC ( Context-Based Access Control )を使いこなせていない
Cisco独自のステートフルインスペクションらしいけど、よそからいただいてきたままの設定。
GREとかここで設定した方が美しいし管理も容易な気がする。 GRE設定できなかった。なんか使いにくい。。。
ip inspect name INSPECT tcp
ip inspect name INSPECT udp
ip inspect name INSPECT ftp
あと以下の設定を入れてログも出した方がいい気がする。
ip inspect log drop-pkt
ip inspect audit-trail
参考URL:
MTUはDialer1で設定されているのにMSSだけVLAN1で設定されている
MTUを含むインターネット接続関連の設定はdialer1で設定されているが、MSS(最大セグメントサイズ)の設定だけ離れ小島のVLAN1で設定されている。
直した方が美しいのだろうけど、今動いているからいいか、という精神で放置。
MSSの値が1414でええのかどうかも疑問。自分はMSS=MTU-20と習った気がするのだが、ここも 今動いているからいいか、という精神でスルー。
MSSはMTU(現在1454)からマイナス40以下が適切とされているため1414で問題なし。
現在の設定
interface Vlan1
ip address 192.168.1.1 255.255.255.0
ip nat inside
ip virtual-reassembly in
ip tcp adjust-mss 1414
end
本来あるべき設定?
interface Dialer1
mtu 1454
ip tcp adjust-mss 1414
ip address negotiated
ip access-group 101 in
no ip unreachables
ip nat outside
ip inspect INSPECT out
ip virtual-reassembly in
encapsulation ppp
dialer pool 1
dialer idle-timeout 0
dialer persistent
dialer-group 1
ppp authentication chap callin
ppp chap hostname #####@#####
ppp chap password 7 #####
ppp ipcp dns request accept
ppp ipcp route default
end
MSSの参考URL
DHCPの設定が不十分
除外するリストの記載なし。やる気ゼロ。
IP重複してリースしてしまったらどんな楽しいことが起こるのでしょうか。
というか、間違って自分のIPアドレスをリースしてしまわないのだろうか。
ip dhcp pool LAN
network 192.168.1.0 255.255.255.0
dns-server 192.168.1.1
default-router 192.168.1.1
domain-name test.local
除外設定は以下で可能。
ip dhcp excluded-address {ip-address} {last-ip-address}
具体的には以下を入れると192.168.0.1~192.168.0.100までがリース対象外になる
ip dhcp excluded-address 192.168.0.1 192.168.0.100
こちらの参考URL
まとめ
色々あったけれど、仕事しておらず、暇していた892Jさんで色々できて勉強になりました。
やはし自宅の環境で色々と作ると勉強になりますなあ。
改めてきれいなコンフィグ作成しなおそうと思った。続きは以下のURLで実施。
コメント