cisco router configuration

PPPoEセッションとDHCPサーバー

PPPOEセッションをセットアップして、インタネットに接続するまでの設定を説明します。

システム前提条件

  • ルーターのWANがISPの終端機器に接続しています。
  • ISPから取得したPPPOE接続用のユーザネームはuser_id パスワードはuser_pass
  • 1つのVlanを利用して、サブネットアドレスが192.168.1.0/24
  • Vlanのゲートウェイアドレスが192.168.1.254
  • 192.168.1.1 から 192.168.1.100までのアドレスをDHCPで払い出し、それ以外は静的指定
  • ISPのMTU为1492(フレッツをはじめ、ほとんどのISPがこの数値です。)

MTU MRU MSSについて:
JumboFrameなどの拡張機能をつかわない場合、Ethernet通信の最大値は:
MTU(Maximum Transmission Unit): 1500byte
MRU(Maximum Receive Unit): 1500byte
MSS(Maximum Segment Size): MTUからIPヘッダー(20byte),TCPヘッダー(20byte)を引く値: 1460byte
PPPOEダイアルアップを利用している場合、パケットに8byteのPPPOEヘッダが含まれているため、MTU/MRUの最大値が1492byte,mssは1452byteになります。実際の運用において、それ以下の値を取る場合が多く、例えばフレッツ光のMTUは1452に設定されています。

IOSコマンドラインの基本

コマンドラインからルータを構成する場合、基本的には以下の手順で、グローバル設定->各インタフェースの設定といった階層構造にしたがって構成します。

  1. enableコマンドで特権モードへ移行する。
  2. config terminalコマンドでterminalからのコンフィグモードに入る。
  3. コンフィグモードに入ったらコマンドプロンプトがrouter-config#に変わって、各種グローバルコマンドを入力できます。
  4. interface interface名 でインターフェイスに対するコンフィグに入って、コマンドプロンプトがrouter-config-if#に変化する。
  5. exitで親階層に戻ります。
  6. disableでユーザーモードへ移行する。
router> enable
router# config terminal
router(config)# interface GigabitEthernet0
router(config-if)# exit
router(config)# exit
router# disable
router>

PPPOEダイアルアップインターフェース

Dialer1を作成して、PPPOEセッションに必要なコンフィグを行います。。

interface dialer1  
  mtu 1494
  ip address negotiated
  ip tcp adjust-mss 1454
  ip nat outside
  dialer pool 1
  dialer-group 1
  encapsulation ppp
  ppp authentication chap callin
  ppp chap hostname user_id
  ppp chap password user_pass
  ppp pap sent-username user_id password user_pass
  ppp ipcp dns request accept
  exit

mtuip mtu
ip mtuはインターフェイスを通過するIPパケットのMTUを設定するコマンドで、MTUコマンドはインタフェースを通過するすべてのパケットに適用します。

chappap
ダイヤルアップ接続などで使われる2種類の認証プロトコル。NTT系回線はCHAPを利用しているらしいが、念のため両方ともセットしたほうが無難です。

Dialer1の設定が終わったら以下のコマンドで接続状態を確認できます。

show interface dialer1

Dialer1にグローバルIPアドレスがアサインされれば成功です。

VLanのセットアップ

デフォルト状態ではVlan1という名前のVlanが存在して、すべてのLANポートがこのVlan1にアサインされています。
特にVlanを分ける必要がなければこのままVlan1を利用したほうが楽です。

interface Vlan1
  ip address 192.168.1.254 255.255.255.0
  ip nat inside
  no shutdown
  exit  

CISCOのIOSではほとんどのコマンドにnoを付けることで逆効果の設定、または既に存在するコンフィグを取り消すことができます。
インタフェースのデフォルト状態はshutdownであるため、no shutdownコマンドでインタフェースを起動させます。

NAT(ネットワークアドレス変換)

セキュリティのため、インタフェースがデフォルトではshutdown状態と同じように、デフォルトではすべてのパケットをdenyする挙動を取っています。
Vlan1とDialer1の間の通信を手動でセットアップしなければなりません。

ip nat inside source list 1 interface dialer 1 overload
dialer-list 1 protocol ip permit
ip route 0.0.0.0 0.0.0.0 dialer 1 permanent

Dialerが一つしかないため、すべてのパケットをDialer1にルートします。permanent付ければはDialer1の接続が一時切ったとしてもこのルーティングを保持します。

DHCP

一部のLANアドレスをDHCPで管理して、スマホ、タブレットなどに動的に払い出すようにしながら、NAS、無線AP、サーバーなどに手動で固定IPを設定するほうが望ましい。そのため、DHCPをセットアップしたうえで、一部アドレスをDHCPから除外するように設定します。

ip dhcp pool lan
  network 192.168.1.0 255.255.255.0
  default-router 192.168.1.254
  dns-server 8.8.8.8 8.8.4.4
  exit

ip dhcp excluded-address 192.168.1.101 192.168.1.254

注意:excluded-addressであるため、動的分配用アドレスではなく、動的分配しないアドレスになります。

設定を保存する

これでホーム用ルーターとしての基本的な機能が揃いました。
ただし、これまでの構成がRAM上のrunning-configを変更しただけなので、writeコマンドでNVRAMに書き込まないと電源を切ったり、ルーターを再起動したりするとすべての構成がなくなります。
次回:セーブしたのに、再起動したら全部リセットされた!?