RFC 4636
Foreign Agent Error Extension for Mobile IPv4
Foreign Agent Error Extension for Mobile IPv4 ๐
Okay bestie, this is RFC 4636 โจ, written by C. Perkins (that's Charles E. Perkins) at Nokia Research Center for the Network Working Group ๐ธ. It's a Standards Track doc dated October 2006, and it updates RFC 3344 (the Mobile IP base spec) ๐ . Section 4 explains that update.
Status of This Memo โจ
This document specifies an Internet standards track protocol for the Internet community, and it's asking for discussion and suggestions for improvements ๐ซถ. For the standardization state and status of this protocol, check the current edition of "Internet Official Protocol Standards" (STD 1). Distribution of this memo is unlimited.
Copyright Notice ๐
Copyright (C) The Internet Society (2006).
Abstract ๐ฆ
This doc adds a new extension that Foreign Agents can use when they run Mobile IP for IPv4. Right now, a foreign agent can't share status info without wrecking the mobile node's ability to verify the authentication data the home agent sent ๐ญ. This extension fixes that by giving the foreign agent a better spot to put its status info for the mobile node.
1. Introduction โจ
This doc specifies a new non-skippable extension for Foreign Agents running Mobile IP for IPv4 [4] ๐. It lets a foreign agent send an error code without messing with the data the Home Agent put in the Registration Reply message. So the mobile node can still confirm that the Home Agent made that Registration Reply, even when the foreign agent is required by protocol to add new status info to it. Iconic, right? ๐
2. Terminology ๐
The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be read as described in RFC 2119 [1] ๐ฅ. Any other terms are used the way they were already defined in [4].
3. FA Error Extension Format ๐ง
The FA Error Extension follows the Short Extension format that's specified for Mobile IPv4 [4]. It's not skippable, so no skipping allowed, bestie ๐.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Sub-Type | Status |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Here's what each field holds:
Type
45
Length
2
Sub-Type
0
Status
A status code used by the foreign agent to supply status
information to the mobile node.
4. Operation and Use of the FA Error Extension ๐ฅ
The FA Error Extension is only valid inside Mobile IPv4 Registration Reply messages, and it's still not skippable ๐ โโ๏ธ. If a mobile node can't correctly interpret what's in the FA Error Extension, it MUST NOT use the care-of address from that Registration Reply message. This holds until it sends another Registration Request message and gets a successful Registration Reply back ๐.
The status codes you're allowed to use in the FA Error Extension are in the range 64-127 ๐. The currently specified codes are:
64 reason unspecified
65 administratively prohibited
66 insufficient resources
68 home agent failed authentication
71 poorly formed Reply
77 invalid care-of address
78 registration timeout
These are defined in RFC 3344 [4] for use by the Foreign Agent. Status codes used with the FA Error extensions must not be defined differently for the Code field of Registration Reply messages, so keep them consistent, babe ๐ซถ.
When a foreign agent tacks an FA Error Extension onto a Registration Reply it got from the Home Agent, it has to update the UDP Length field in the UDP header [5] to cover the extra 4 bytes ๐งฎ.
This doc updates the Mobile IP base spec [4] for what the foreign agent does when the home agent fails authentication โจ. Rather than changing the "status" field of the Registration Reply to 68, the foreign agent should now append the Foreign Agent Error Extension with the status value 68 ๐ .
5. Mobile Node Considerations ๐ฑ
Say a mobile node gets a successful Registration Reply (status code 0 or 1), but the FA Error Extension shows the foreign agent isn't honoring that reply. Then the mobile node SHOULD send a deregistration message to the home agent ๐ซ . That way, the home agent won't keep a registration status that doesn't match what the foreign agent has.
6. Foreign Agent Considerations ๐ฆ
When a foreign agent denies a successful Registration Reply, it SHOULD send a Registration Revocation message [2] to the Home Agent, as long as a mobility security association exists between them ๐. If the foreign agent does have that required security association, this way of telling the home agent avoids the weak spot where malicious foreign agents could cause damage, which section 8 covers.
7. IANA Considerations ๐ธ
This spec reserves one number for the FA Error Extension (see section 3). That number comes from the space of non-skippable mobility extensions, which runs 0-127 and is defined in the Mobile IPv4 spec [4] ๐ข.
This spec also creates a new number space of sub-types for the type number of this extension. Sub-type zero gets allocated from this space for the extension in this document. Like the other Mobile IP number spaces [4], future allocations from this space need expert review [3] ๐ง.
The status codes allowed in the FA Error Extension are a subset of the status codes defined in the Mobile IPv4 spec [4]. If new status codes get defined for Mobile IPv4 later, each new one has to say whether it's allowed in the FA Error Extension ๐ .
8. Security Considerations ๐
Real talk, this section is the spicy one ๐ถ๏ธ. Read it carefully.
The extension in this doc makes Mobile IPv4 more secure, because it lets the mobile node be sure the information in a Registration Request is authentic ๐. Before this, whenever a foreign agent had to share status info with the mobile node, the only way to do it was to wreck the mobile device's ability to verify the Mobile-Home Authentication Extension data ๐ฉ.
In lots of common cases, the mobile node won't have a security association with the foreign agent that sent the extension ๐. So the mobile node can't tell whether the foreign agent that sent this extended Registration Reply is the same one that got the mobile node's Registration Request. Because of that, a malicious foreign agent could make a mobile node act like its registration failed, even though both the home agent and a properly working foreign agent had accepted the Registration Request ๐จ. To cut down on this risk from malicious Registration Reply messages with the unauthenticated extension, the mobile node MAY hold off on processing these denied Registration Reply messages for a short time. That gives it a chance to see whether another successful Registration Reply shows up from the foreign agent ๐ต๏ธโโ๏ธ.
9. Acknowledgements ๐
Huge thanks to Kent Leung and Henrik Lefkowetz for suggesting improvements to this spec ๐ฅฐ.
10. Normative References ๐
- [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
- [2] Glass, S. and M. Chandra, "Registration Revocation in Mobile IPv4", RFC 3543, August 2003.
- [3] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 2434, October 1998.
- [4] Perkins, C., "IP Mobility Support for IPv4", RFC 3344, August 2002.
- [5] Postel, J., "User Datagram Protocol", STD 6, RFC 768, August 1980.
Author's Address ๐๏ธ
Charles E. Perkins
Palo Alto Systems Research Lab
Nokia Research Center
975 Page Mill Road, Suite 200
Palo Alto, CA 94304-1003
Phone: +1 650-496-4402
Fax: +1-650-739-0779
EMail: charles.perkins@nokia.com
Full Copyright Statement ๐
Copyright (C) The Internet Society (2006).
This document is subject to the rights, licenses and restrictions in BCP 78. Except as BCP 78 says otherwise, the authors keep all their rights ๐ .
This document and the information in it are provided on an "AS IS" basis. THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ๐.
Intellectual Property โ๏ธ
The IETF doesn't take a position on whether any Intellectual Property Rights or other rights claimed around this technology are valid or in scope, or whether licenses for them are available. It also doesn't say it has searched for any such rights. Info about rights in RFC documents is in BCP 78 and BCP 79.
Copies of IPR disclosures sent to the IETF Secretariat, along with any assurances of licenses, or the results of any attempt to get a general license or permission for implementers or users, are available from the IETF's online IPR repository at http://www.ietf.org/ipr.
The IETF invites anyone to bring to its attention any copyrights, patents, patent applications, or other proprietary rights that might cover technology needed to implement this standard. Send that info to ietf-ipr@ietf.org ๐ฉ.
Acknowledgement ๐ซถ
Funding for the RFC Editor function comes from the IETF Administrative Support Activity (IASA) ๐.
๐ฆ where this page comes from
- ietf: rfc4636 2006-10
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms