Internet Protocol Control Protocol
In
Each of the two endpoints of a PPP connection must send an IPCP configure request to its peer because the TCP/IP options are independent for each direction of a PPP connection.[1]
A PPP endpoint can request a specific IP address from its peer. It can also ask the peer to suggest an IP address by requesting the address 0.0.0.0; the peer then sends its suggestion in an IPCP Nak packet, which the first peer must subsequently request in order to complete the negotiation. In practice, in protocols like
A similar NCP, the
IP Frame
After the configuration is done, the link is able to carry IP data as a payload of the PPP frame. This code indicates that IP data is being carried.
PPP header | IPCP header | Data::: |
IPCP header:
Offsets | Octet | 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Octet | Bit | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
0 | 0 | Code | Identifier | Length |
Code.
8 bits.
Specifies the function to be performed.
Code | Description | References |
---|---|---|
0 | Vendor Specific. | RFC 2153 |
1 | Configure-Request. | |
2 | Configure-Ack. | |
3 | Configure-Nak. | |
4 | Configure-Reject. | |
5 | Terminate-Request. | |
6 | Terminate-Ack. | |
7 | Code-Reject. |
Identifier. 8 bits.
Used to match requests and replies.
Length.
16 bits.
Size of the packet including the header.
Data.
Variable length.
Zero or more bytes of data as indicated by the Length.
This field may contain one or more Options.
Configuration Options
IPCP Configuration Options allow negotiatiation of desirable Internet Protocol parameters. IPCP uses the same Configuration Option format defined for LCP Link Control Protocol, with a separate set of Options.
IPCP Configuration Options:
00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Option | Length | ||||||||||||||
Data |
Option. 8 bits.
Option | Length | Description | References |
---|---|---|---|
1 | 10 | IP-Addresses (deprecated) | RFC 1172, RFC 1332 |
2 | ≥4 | IP-Compression-Protocol | RFC 1332, RFC 3241, RFC 3544 |
3 | 6 | IP-Address. | RFC 1332 |
4 | 6 | Mobile-IPv4. | RFC 2290 |
129 | 6 | Primary DNS Server Address. | RFC 1877 |
130 | 6 | Primary NBNS Server Address. | RFC 1877 |
131 | 6 | Secondary DNS Server Address. | RFC 1877 |
132 | 6 | Secondary NBNS Server Address. | RFC 1877 |
Length. 8 bits.
Data. Variable length.
IP-Compression-Protocol
Type | Length | IP-Compression-Protocol | Data |
---|---|---|---|
1 byte | 1 byte | 2 bytes | variable |
IP-Address
Type | Length | IP address |
---|---|---|
1 byte | 1 byte | 4 bytes |
Microsoft
In the Microsoft implementation, "Common IPCP options include an IP address and the IP addresses of
See also
References
- RFC 1332: The Internet Protocol Control Protocol (IPCP)
- RFC 1570: PPP Link Control Protocol (LCP) Extensions
- RFC 1661: The Point-to-Point Protocol (PPP)
- RFC 1877: PPP Internet Protocol Control Protocol Extensions for Name Server Addresses
- RFC 5072: IP Version 6 over PPP defines the core of IPV6CP, with extensions defined in RFC 5172
- RFC 4241: A Model of IPv6/IPv4 Dual Stack Internet Access Service — discusses the combination IPCP and IPV6CP