概要

PPPのIPCPによって、対向インタフェースのIPアドレスに対するホストルートが自動的にルーティングテーブルに追加されます。このホストルートを削除する設定について考えます。

ネットワーク構成

設定概要

R1、R2の設定の概要は以下のとおりです。

R1

interface Loopback0
 ip address 1.1.1.1 255.255.255.255
!
interface Serial0/0
 ip address 192.168.12.1 255.255.255.0
 encapsulation ppp
!
router ospf 1
 log-adjacency-changes
 network 1.1.1.1 0.0.0.0 area 0
 network 192.168.12.0 0.0.0.255 area 0

R2

interface Loopback0
 ip address 2.2.2.2 255.255.255.255
!
interface Serial0/0
 ip address 192.168.12.2 255.255.255.0
 encapsulation ppp
!
router ospf 1
 log-adjacency-changes
 network 2.2.2.2 0.0.0.0 area 0
 network 192.168.12.0 0.0.0.255 area 0

問題

R1のルーティングテーブルは次のようになっています。

R1

R1#show ip route 
~省略~

Gateway of last resort is not set

     192.168.12.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.12.0/24 is directly connected, Serial0/0
C       192.168.12.2/32 is directly connected, Serial0/0
     1.0.0.0/32 is subnetted, 1 subnets
C       1.1.1.1 is directly connected, Loopback0
     2.0.0.0/32 is subnetted, 1 subnets
O       2.2.2.2 [110/65] via 192.168.12.2, 00:21:43, Serial0/0

R1のルーティングテーブルには、S0/0に接続されているのR2のIPアドレス192.168.12.2に対するホストルートが登録されています。これは、R2のルーティングテーブルでも同様です。

ルーティングテーブルに対向のIPアドレスの/32ホストルートを登録したくないと考えています。R1、R2では、どのような設定をすればよいでしょうか?

解答

R1/R2

interface Serial0/0
 no peer neighbor-route

解説

PPPには上位のレイヤ3プロトコルの制御を行うためのNCP(Network Control Protocol)があります。IPv4の制御を行うにはIPCP、IPv6の制御を行うにはIPv6CPがあります。

PPPの対向のIPアドレスに対する/32のホストルートが、ルーティングテーブルに登録されるのはIPCPによるものです。IPCPで対向のIPアドレスを検出して、自身のルーティングテーブルに登録します。/32のホストルートはpeer neighbor-routeと呼ばれConnectedのルートとなります。

また、IPCPにはIPアドレスを割り当てる機能もあります。PPPで接続した対向のインタフェースに対して指定した範囲のIPアドレスの割り当てが可能です。インターネット接続でフレッツサービスを利用していると、PPPoEを利用しています。PPPoEでISPのユーザ認証を行い、認証したユーザに対してIPアドレスの割り当てを行なっています。

PPPのIPCPによるpeer neighbor-routeを無効化することもできます。peer neighbor-routeを無効化するには、PPPのインタフェース上で以下のコマンドを入力して、clear ip routeコマンドでルーティングテーブルをリフレッシュします。

(config-if)#no peer neighbor-route

R1/R2でpeer neighbor routeを無効化するには、次の設定となります。

R1/R2

interface Serial0/0
 no peer neighbor-route

図 peer neighbor-rotueの無効化
図 peer neighbor-rotueの無効化

R1での実際の設定のログは以下のようになります。

R1

R1#show ip route 
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

     192.168.12.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.12.0/24 is directly connected, Serial0/0
C       192.168.12.2/32 is directly connected, Serial0/0
     1.0.0.0/32 is subnetted, 1 subnets
C       1.1.1.1 is directly connected, Loopback0
     2.0.0.0/32 is subnetted, 1 subnets
O       2.2.2.2 [110/65] via 192.168.12.2, 00:04:09, Serial0/0
R1#configure terminal 
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)#interface Serial 0/0
R1(config-if)#no peer neighbor-route 
R1(config-if)#do clear ip route *
R1(config-if)#do show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

C    192.168.12.0/24 is directly connected, Serial0/0
     1.0.0.0/32 is subnetted, 1 subnets
C       1.1.1.1 is directly connected, Loopback0
     2.0.0.0/32 is subnetted, 1 subnets
O       2.2.2.2 [110/65] via 192.168.12.2, 00:00:02, Serial0/0
R1(config-if)#

まとめ

  • PPPではレイヤ3プロトコルを制御するNCPがある
  • IPv4の制御を行うNCPはIPCP
  • IPCPによって対向のIPアドレスを検出して/32のホストルート(peer neighbor-route)をルーティングテーブルに登録する
  • no peer neighbor-routeコマンドでpeer neighbor-routeを無効化する