Thursday, March 17, 2011

Cisco SLARP

Cisco HDLC (cHDLC) is the Cisco-proprietary extension to the High-Level Data Link Control (HDLC), a data link layer protocol that was originally developed by the International Organization for Standardization (ISO). The primary reason for the creation of cHDLC is to address the limitation of multiprotocol support – there is no Protocol field defined for identifying the encapsulated L3 network protocols.

The Cisco HDLC extension also includes the definition of Serial Line Address Resolution Protocol (SLARP). SLARP provides dynamic address assignment between 2 endpoints across a serial link, as well as a keepalive mechanism for ensuring the availability of a serial link.

The keepalive mechanism works by carrying the sequence numbers in the SLARP frames. The sequence numbers are incremented for each keepalive sent. The health of the serial link can be determined by each endpoint by keeping track of the sequence. The serial link goes down (line protocol down) after a certain number of sequence numbers is missed (keepalive lost).

Below shows how SLARP dynamically assign an IP address for a router interface resides on a /30 point-to-point serial link:
RT2#sh run int s0/0
Building configuration...

Current configuration : 52 bytes
!
interface Serial0/0
 no ip address
 shutdown
end

RT2#
RT2#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
RT2(config)#int s0/0
RT2(config-if)#ip address ?
  A.B.C.D     IP address
  negotiated  IP Address negotiated over PPP
  pool        IP Address autoconfigured from a local DHCP pool
  slarp       Set IP address through SLARP

RT2(config-if)#ip address slarp ?
  retry  Define retry time interval

RT2(config-if)#ip address slarp retry ?
  <1-60>  Retry timer interval, from 1 to 60 seconds

RT2(config-if)#ip address slarp retry 10
RT2(config-if)#no shut
RT2(config-if)#^Z
RT2#
00:22:47.799: %SYS-5-CONFIG_I: Configured from console by console
00:22:49.363: %LINK-3-UPDOWN: Interface Serial0/0, changed state to up
00:22:50.367: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0, changed state to up
00:23:05.099: %LINK-5-SLARP: Serial0/0 address 10.10.10.2, resolved by 10.10.10.1
RT2#
RT2#sh ip int brief
Interface          IP-Address      OK? Method Status                Protocol
Serial0/0          10.10.10.2      YES SLARP  up                    up
Serial0/1          unassigned      YES unset  administratively down down
Serial0/2          unassigned      YES unset  administratively down down
Serial0/3          unassigned      YES unset  administratively down down
FastEthernet1/0    unassigned      YES unset  administratively down down
RT2#
RT2#ping 10.10.10.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.10.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 16/31/44 ms
RT2#
RT2#sh cdp neighbors detail | in Device ID|IP address|Interface
-------------------------
Device ID: RT1
  IP address: 10.10.10.1
Interface: Serial0/0,  Port ID (outgoing port): Serial0/0
RT2#
RT2#sh run int s0/0
Building configuration...

Current configuration : 93 bytes
!
interface Serial0/0
 ip address 10.10.10.2 255.255.255.252
 ip address slarp retry 10
end

RT2#
RT2#sh ip int s0/0
Serial0/0 is up, line protocol is up
  Internet address is 10.10.10.2/30
  Broadcast address is 255.255.255.255
  Address determined by Reverse ARP from host 10.10.10.1
--- output omitted ---

No comments:

Post a Comment