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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
|
Network Working Group J. Solomon
Request for Comments: 2290 Motorola
Updates: 2002 S. Glass
Category: Standards Track FTP Software
February 1998
Mobile-IPv4 Configuration Option for PPP IPCP
Status of this Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Copyright Notice
Copyright (C) The Internet Society (1998). All Rights Reserved.
Abstract
Mobile IP [RFC 2002] defines media-independent procedures by which a
Mobile Node can maintain existing transport and application-layer
connections despite changing its point-of-attachment to the Internet
and without changing its IP address. PPP [RFC 1661] provides a
standard method for transporting multi-protocol packets over point-
to-point links. As currently specified, Mobile IP Foreign Agents
which support Mobile Node connections via PPP can do so only by first
assigning unique addresses to those Mobile Nodes, defeating one of
the primary advantages of Foreign Agents. This documents corrects
this problem by defining the Mobile-IPv4 Configuration Option to the
Internet Protocol Control Protocol (IPCP) [RFC 1332]. Using this
option, two peers can communicate their support for Mobile IP during
the IPCP phase of PPP. Familiarity with Mobile IP [RFC 2002], IPCP
[RFC 1332], and PPP [RFC 1661] is assumed.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Specification Language . . . . . . . . . . . . . . . . . 2
1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . 2
1.3. Problem Statement . . . . . . . . . . . . . . . . . . . 3
1.4. Requirements . . . . . . . . . . . . . . . . . . . . . . 5
2. Mobile-IPv4 Configuration Option . . . . . . . . . . . . . . . 6
2.1. Option Format . . . . . . . . . . . . . . . . . . . . . 6
2.2. Overview . . . . . . . . . . . . . . . . . . . . . . . . 7
Solomon & Glass Standards Track [Page 1]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
2.3. High-Level Requirements for Non-Mobile-Nodes . . . . . . 7
2.4. High-Level Requirements for Mobile Nodes . . . . . . . . 8
2.5. Detailed Description . . . . . . . . . . . . . . . . . . 8
2.6. Example Scenarios . . . . . . . . . . . . . . . . . . . 12
3. Additional Requirements . . . . . . . . . . . . . . . . . . . 14
3.1. Other IPCP Options . . . . . . . . . . . . . . . . . . . 14
3.2. Move Detection . . . . . . . . . . . . . . . . . . . . . 14
4. Security Considerations . . . . . . . . . . . . . . . . . . . 15
5. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15
6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 16
7. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 16
8. Full Copyright Statement . . . . . . . . . . . . . . . . . . . 17
1. Introduction
Mobile IP [RFC 2002] defines protocols and procedures by which
packets can be routed to a mobile node, regardless of its current
point-of-attachment to the Internet, and without changing its IP
address. Mobile IP is designed to run over any type of media and any
type of data link-layer. However, the interaction between Mobile IP
and PPP is currently underspecified and generally results in an
inappropriate application of Mobile IP when mobile nodes connect to
the Internet via PPP.
This document defines proper interaction between a mobile node [RFC
2002] and a peer through which the mobile node connects to the
Internet using PPP. This requires the definition of a new option for
IPCP [RFC 1332], named the "Mobile-IPv4" Configuration Option, which
is defined in this document. The mobile node and the peer use this
option to negotiate the appropriate use of Mobile IP over the PPP
link.
The Mobile-IPv4 option defined in this document is intended to work
in conjunction with the existing IP-Address option [RFC 1332].
1.1. Specification Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119.
1.2. Terminology
This document uses the following terms as defined in [RFC 2002]:
Solomon & Glass Standards Track [Page 2]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
Mobile Node
A host or router that changes its point-of-attachment from one
link to another. A mobile node may change its location without
changing its IP address; it may continue to communicate with
other Internet nodes at any location using its (permanent)
home, IP address, assuming link-layer connectivity is available
at its current location.
Home Agent
A router with at least one interface on a mobile node's home
link. A home agent intercepts packets destined to a mobile
node's home address and tunnels them to the mobile node's
care-of address when the mobile node is connected to a foreign
link. A mobile node informs its home agent of its current
care-of address through an authenticated registration protocol
defined by Mobile IP.
Foreign Agent
A router with at least one interface on a mobile node's
(current) foreign link. When a mobile node uses a foreign
agent's care-of address, the foreign agent detunnels and
delivers packets to the mobile node that were tunneled by the
mobile node's home agent. A foreign agent might also serve as
a default router for packets sent by a registered mobile node.
Peer
The PPP peer of a mobile node. The mobile node's peer might
support home agent functionality, foreign agent functionality,
both, or neither.
1.3. Problem Statement
In Mobile IP, packets sent to a mobile node's home address are routed
first to the mobile node's home agent, a router on the mobile node's
home link which intercepts packets sent to the home address. The
home agent then tunnels such packets to the mobile node's care-of
address, where the packets are extracted from the tunnel and
delivered to the mobile node. There are two types of care-of
addresses:
Solomon & Glass Standards Track [Page 3]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
Co-located Care-of Address
An address temporarily assigned to a mobile node itself. In this
case, the mobile node is the exit-point of the tunnel and
decapsulates packets encapsulated for delivery by its home agent.
A Co-located Care-of Address may be used by exactly one mobile
node at any point in time.
Foreign Agent Care-of Address
An address of a foreign agent that has at least one interface on a
mobile node's visited, foreign link. In this case, the foreign
agent decapsulates packets that have been tunneled by the home
agent and delivers them to the mobile node over the visited link.
A Foreign Agent Care-of Address may be used simultaneously by many
mobile nodes at any point in time.
In Appendix B, Mobile IP [RFC 2002] currently specifies only the
following with respect to PPP:
"The Point-to-Point-Protocol (PPP) [RFC 1661] and its Internet
Protocol Control Protocol (IPCP) [RFC 1332], negotiates [sic] the
use of IP addresses.
"The mobile node SHOULD first attempt to specify its home address,
so that if the mobile node is attaching to its home [link], the
unrouted link will function correctly. When the home address is
not accepted by the peer, but a transient IP address is
dynamically assigned to the mobile node, and the mobile node is
capable of supporting a co-located care-of address, the mobile
node MAY register that address as a co-located care-of address.
When the peer specifies its own IP address, that address MUST NOT
be assumed to be a foreign agent care-of address or the IP address
of a home agent."
Inspection of this text reveals that there is currently no way for
the mobile node to use a foreign agent care-of address, without first
being assigned a unique IP address, even if the peer also supports
foreign agent functionality. The reason for this can be seen by
walking through the IPCP negotiation:
1. A mobile node connects to a peer via PPP and proposes its home
address in an IPCP Configure-Request containing the IP-Address
option. In this scenario, we assume that the mobile node is
connecting to some foreign link.
Solomon & Glass Standards Track [Page 4]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
2. The peer has no way of knowing whether this Configure-Request was
received from: (a) a mobile node proposing its home address; or
(b) a conventional node proposing some topologically non-routable
address. In this case, the peer must (conservatively) send a
Configure-Nak of the IP-Address option supplying a topologically
appropriate address for use by the node at the other end of the
PPP link.
3. The mobile node, in turn, has no way of knowing whether this
Configure-Nak was received because the peer is a foreign agent
being conservative, or because the peer does not implement Mobile
IP at all. Therefore, the mobile node must (conservatively)
assume that the peer does not implement Mobile IP and continue
the negotiation of an IP address in IPCP, after which point the
mobile node can use the assigned address as a co-located care-of
address.
Here we observe that, even if the mobile node's peer is a foreign
agent and sends an Agent Advertisement to the mobile node after IPCP
reaches the Opened state, the mobile node will still have negotiated
a routable address in step 3, which it is likely already using as a
co-located care-of address. This defeats the purpose of foreign
agent care-of addresses, which are designed to be shared by multiple
mobile nodes and to eliminate the need to assign a unique address to
each mobile node.
1.4. Requirements
The purpose of this document is to specify the behavior of both ends
of the PPP link when one or more of the PPP peers supports Mobile IP.
Specifically, the design of the option and protocol defined in this
document is based upon the following requirements:
1. The option and protocol described in this document must be
backwards compatible with conventional nodes and their potential
peers which do not implement this option nor any Mobile IP
functionality.
2. The option and protocol described in this document must
accommodate a variety of scenarios, minimally those provided in
the examples of Section 2.6.
3. The option and protocol described in this document must not
duplicate any functionality already defined in other IPCP
options; specifically, the IP-Address option.
Solomon & Glass Standards Track [Page 5]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
4. A unique address must not be assigned to a mobile node unless
absolutely necessary. Specifically, no such address is assigned
to a mobile node that connects via PPP to its home link or a
mobile node that connects via PPP to a foreign agent (and uses
that foreign agent's care-of address).
2. Mobile-IPv4 Configuration Option
This section defines the Mobile-IPv4 Configuration Option and
provides several examples of its use.
2.1. Option Format
The Mobile-IPv4 Configuration Option for IPCP is defined as follows:
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 | Mobile Node's ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... Home Address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type
4 (Mobile-IPv4)
Length
6 (The length of this entire extension in bytes)
Mobile Node's Home Address
In a Configure-Request, the IP home address of the mobile node
sending this Configuration Option, otherwise the (unmodified) IP
home address of the mobile node when sent in a Configure-Ack or
Configure-Reject. Configure-Nak'ing this option is undefined and
MUST NOT be sent by implementations complying with this version of
the specification. This field MUST NOT be zero.
Default Value
The Mobile-IPv4 Configuration Option defaults to the sending
mobile node's home address.
In describing the operation of the Mobile-IPv4 Configuration Option
(in conjunction with the IP-Address Configuration Option), we use the
following abbreviations:
Solomon & Glass Standards Track [Page 6]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
PPP Message Types:
Request = Configure-Request
Reject = Configure-Reject
Ack = Configure-Ack
Nak = Configure-Nak
IPCP Configuration Options:
MIPv4 = Mobile-IPv4
IP = IP-Address
IP addresses:
a.b.c.d = some non-zero IP address
w.x.y.z = some non-zero IP address other than a.b.c.d
home = a mobile node's IP Home address
coa = an IP Care-Of Address
0 = the all-zeroes IP address (0.0.0.0)
2.2. Overview
The Mobile-IPv4 Configuration Option is designed to be used in
conjunction with the IP-Address Configuration Option. For the
convenience of implementors, the detailed description in section 2.5
includes all possible combinations of these two options that might be
sent by a PPP peer during IPCP. Along with each possibility is a
description of how the receiver should interpret the contents as well
as a suggested course of action.
2.3. High-Level Requirements for Non-Mobile-Nodes
A node that is not performing mobile node functionality (such as
non-Mobile-IP-aware nodes as well as nodes performing only home agent
functionality, foreign agent functionality, or both) MUST NOT include
a Mobile-IPv4 Configuration Option within any Configure-Request
message. As per [RFC 1332], such a node SHOULD send a Configure-
Request containing an IP-Address Configuration Option in which the
IP-Address field is set to a non-zero IP address that the node has
assigned to one of its interfaces. If an explicit IP address has
been assigned to the node's PPP interface then this address SHOULD be
sent in preference to any of the node's other addresses.
A node MUST NOT send a Configure-Nak containing a Mobile-IPv4
Configuration Option. Doing so is currently "undefined" and might
cause interoperability problems when a useful meaning for Configure-
Nak is ultimately defined for the Mobile-IPv4 Configuration Option.
A node that sends a Configure-Ack containing a Mobile-IPv4
Configuration Option SHOULD send an Agent Advertisement [RFC 2002]
immediately upon IPCP for that link entering the Opened state.
Solomon & Glass Standards Track [Page 7]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
2.4. High-Level Requirements for Mobile Nodes
A mobile node SHOULD begin its IPCP negotiation by sending the
Configure-Request described in either item #1 or item #4 in Section
2.5. The mobile node MAY begin its negotiation with one of the other
numbered items in Section 2.5 under extenuating circumstances.
A mobile node that receives a Configure-Ack containing a Mobile-IPv4
Configuration Option MUST receive an Agent Advertisement, possibly in
response to an Agent Solicitation, before sending a Registration
Request [RFC 2002] if that mobile node is connecting to a foreign
link. This is because the peer might be a foreign agent that
enforces a policy which requires a mobile node to register with that
foreign agent even if the mobile node is using a co-located care-of
address. A mobile node need not wait for such an advertisement if it
connects to its home link. See item 7a in section 2.5 for one way in
which a mobile node can determine if it has connected to its home
link. Another way is by receiving an explicit notification of this
fact from its peer, such as receipt of the messages in items 1b, 2c,
and 3a in section 2.5.
A mobile node that receives a Configure-Reject containing a Mobile-
IPv4 Configuration Option SHOULD fall back to IPCP negotiation using
the IP-Address option [RFC 1332]. A mobile node SHOULD begin this
negotiation with Request(IP=home) or Request(IP=0), depending on
whether or not the mobile node is connecting to its home link,
respectively. A mobile node MAY make this determination by
inspection of an IP-Address option contained within a Configure-
Request sent by its peer. If the prefix of the peer's stated IP-
address is equal to the prefix of the mobile node's home address,
then the mobile node MAY conclude that it is connecting to its home
link. Otherwise, if the mobile node is connecting to a foreign link,
then the mobile node SHOULD send Request(IP=0) since its peer might
have no means for assigning addresses other than IPCP. This
specification therefore updates this behavior as described in [RFC
2002], the latter of which recommends that a mobile node begin IP-
Address negotiation with Request(IP=Home) under all circumstances.
A peer that is performing neither home agent nor foreign agent
functionality SHOULD send a Reject in response to any Request
received from its peer that contains a Mobile-IPv4 Configuration
Option.
2.5. Detailed Description
The numbered items below show all possible combinations of Mobile-
IPv4 and IP-Address Configuration Options that a mobile node (or a
conventional node) might send to its peer. Mobile nodes SHOULD begin
Solomon & Glass Standards Track [Page 8]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
their IPCP negotiation with item #1 or item #4 depending on whether
they prefer a co-located or a foreign agent care-of address
respectively. The lettered items list the possible legal responses
that a peer might send to the mobile node (or conventional node) in
response to the numbered Request.
In each case, an interpretation is defined and a suggested course of
action is provided. Finally, it is believed that the presentation
below has the advantages of conciseness and precision in comparison
to an equivalent presentation in "prose form."
1. Request(IP=0,MIPv4=home) means "I prefer a co-located care-of
address to a foreign agent care-of address." Peer MUST respond
with one of the following:
a. Nak(IP=coa) means "use coa as your co-located care-of
address". Goto 2.
b. Nak(IP=home) means "you're at home and don't need a care-of
address". Goto 3.
c. Reject(IP=0) means "I cannot assign a co-located care-of
address but you're welcome to use me as a foreign agent".
Goto 4.
d. Reject(MIPv4=home) means "I do not implement the Mobile-IPv4
option". If the peer also sent Request(IP=address) and the
prefix of the peer's assigned address is equal to that of the
mobile node's home address, then goto 6 with a.b.c.d=home;
otherwise, goto 5.
e. Reject(IP=0,MIPv4=home) means "use the default". Goto 7.
=> Ack(IP=0, ...), Nak(MIPv4=any, ...) MUST NOT be sent.
2. Request(IP=coa,MIPv4=home) means "I want to use coa as my co-
located care-of address." Peer MUST respond with one of the
following:
a. Ack(IP=coa,MIPv4=home) means "ok, use coa as your co-located
care-of address; be sure to wait for an advertisement."
Opened.
b. Nak(IP=alternate-coa) means "no, use alternate-coa as your
co-located care-of address". Goto 2.
c. Nak(IP=home) means "you're at home and don't need a co-
located care-of address". Goto 3.
d. Reject(IP=coa) means "coa is not a useful value for a co-
located care-of address on this link and I cannot assign a
useful one (or I will not negotiate the IP-Address option) --
you may use me as a foreign agent". Goto 4.
Solomon & Glass Standards Track [Page 9]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
e. Reject(MIPv4=home) means "I do not implement the Mobile-IPv4
option". If the peer also sent Request(IP=address) and the
prefix of the peer's address is equal to that of the mobile
node's home address, then goto 6 with a.b.c.d=home;
otherwise, goto 5.
f. Reject(IP=coa,MIPv4=home) means "use the default". Goto 7.
=> Nak(MIPv4=any, ...) MUST NOT be sent.
3. Request(IP=home,MIPv4=home) means "I think I'm at home but if I'm
wrong then I prefer a co-located care-of address to a foreign
agent care-of address." Peer MUST respond with one of the
following:
a. Ack(IP=home,MIPv4=home) means "yes, you're at home". Opened.
b. Nak(IP=coa) means "you're not at home, use coa as your co-
located care-of address". Goto 2.
c. Reject(IP=home) means "you're not at home and I cannot assign
a co-located care-of address (or I will not negotiate the
IP-Address option) -- you may use me as a foreign agent".
Goto 4.
d. Reject(MIPv4=home) means "I do not implement the Mobile-IPv4
option". If the peer also sent Request(IP=address) and the
prefix of the peer's address is equal to that of the mobile
node's home address, then goto 6 with a.b.c.d=home;
otherwise, goto 5.
e. Reject(IP=home,MIPv4=home) means "use the default". Goto 7.
=> Nak(MIPv4=any, ...) MUST NOT be sent.
4. Request(MIPv4=home) means "I want to run Mobile IP over this link
and I don't want a co-located care-of address." Peer MUST respond
with one of the following:
a. Ack(MIPv4=home) means "ok, wait for an advertisement to
figure out where you are." Opened.
b. Reject(MIPv4=home) means "I do not implement the Mobile-IPv4
option". If the peer also sent Request(IP=address) and the
prefix of the peer's address is equal to that of the mobile
node's home address, then goto 6 with a.b.c.d=home;
otherwise, goto 5.
=> Nak(MIPv4=any, ...) MUST NOT be sent.
5. Request(IP=0) means "Please assign an address/co-located-care-
of-address". Peer MUST respond with one of the following:
Solomon & Glass Standards Track [Page 10]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
a. Nak(IP=a.b.c.d) means "use a.b.c.d as your address/co-
located-care-of-address". Goto 6.
b. Reject(IP=0) means "I cannot assign an address (for the
Mobile Node to use as a co-located-care-of-address), or I do
not implement the IP-Address option". Goto 7.
=> Ack(IP=0) MUST NOT be sent and historically means "I don't
know your address either". Opened. An implementation MUST
NOT use 0 as its IP address upon receiving Ack(IP=0) but MAY
use some other, non-zero, interface address for packets sent
on its PPP interface.
6. Request(IP=a.b.c.d) means "I want to use a.b.c.d as my
address/home-address/co-located-care-of-address". Peer MUST
respond with one of the following:
a. Ack(IP=a.b.c.d) means "ok, a.b.c.d is your address/home-
address/co-located-care-of-address". Opened.
b. Nak(IP=w.x.y.z) means "no, use w.x.y.z as your address/home-
address/co-located-care-of-address". Goto 6.
c. Reject(IP=a.b.c.d) means "a.b.c.d is a bad address to use,
but I cannot give you a good one" or "I do not implement the
IP-Address option". Goto 7.
7. Request() means "I want to use the default". Peer MUST respond
with one of the following:
a. Ack() means "ok, use the default". Opened.
In this case the mobile node will use the "default" values of
the IP-Address option (no address configured by IPCP) and the
Mobile-IPv4 option (the mobile node's IP home address). The
mobile node SHOULD send Agent Solicitations to see if there
are any agents present on the current link. (Note that the
current "link" might also include a shared medium if the
mobile node's PPP peer is a bridge.) If an agent is present
and the mobile node receives an Agent Advertisement, then the
mobile node employs its move-detection algorithm(s) and
registers accordingly.
In any case, if the mobile node's peer supplied an IP-Address
option containing a non-zero value within an IPCP Configure-
Request, the mobile node MAY use this address to determine
whether or not it is connected to its home link. This can be
accomplished by comparing the stated IP address with the
mobile node's home address under the prefix-length associated
with the home link. If the mobile node is connected to its
home link then it SHOULD de-register with its home agent.
Solomon & Glass Standards Track [Page 11]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
Otherwise, the mobile node MAY attempt to obtain a
topologically routable address through any of its supported
means (e.g., DHCP, manual configuration, etc.) for use as a
co-located care-of address. If the mobile node is successful
in obtaining such an address then it SHOULD register this
address with its home agent.
=> Nak(IP=0) MUST NOT be sent. Goto 6.
=> Nak() MUST NOT be sent.
=> Reject() MUST NOT be sent.
2.6. Example Scenarios
This section illustrates the use of the option and protocol as
defined in the previous sections. In the examples which follow, a
Configure-Request sent by a mobile node and the response generated by
the peer are shown on the same line. The number and letter to the
left of each request/response refer to the numbered and lettered
items in Section 2.5.
A. A mobile node prefers a co-located care-of address and the peer
is a foreign agent that is capable of assigning such an address:
(1)(a) Request(IP=0,MIPv4=Home) / Nak(IP=coa)
(2)(a) Request(IP=coa,MIPv4=Home) / Ack(IP=coa,MIPv4=Home)
- Mobile node waits to receive an Agent Advertisement.
- If (Advertisement has R-bit set) then
Mobile node registers using co-located care-of address via
the foreign agent;
else
Mobile node registers using co-located care-of address
directly with its home agent.
B. A mobile node prefers a co-located care-of address and the peer
is a foreign agent that cannot assign a co-located care-of
address (e.g., it has no pool of addresses from which to allocate
for the purpose of assignment):
(1)(c) Request(IP=0,MIPv4=Home) / Reject(IP=0)
(4)(a) Request(MIPv4=Home) / Ack(MIPv4=Home)
- IPCP completes.
- Mobile node waits to receive an Agent Advertisement.
- Mobile node registers using the peer's foreign agent care-of
address with its home agent.
Solomon & Glass Standards Track [Page 12]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
C. A mobile node prefers a co-located care-of address and the peer
determines that the mobile node's home address is such that the
mobile node is connecting to its home link:
(1)(b) Request(IP=0,MIPv4=Home) / Nak(IP=Home)
(3)(a) Request(IP=Home,MIPv4=Home) / Ack(IP=Home,MIPv4=Home)
- IPCP completes.
- Mobile node de-registers with its home agent.
D. A mobile node prefers a foreign agent care-of address and the
peer is a foreign agent which finds this state of affairs
satisfactory:
(4)(a) Request(MIPv4=Home) / Ack(MIPv4=Home)
- IPCP completes.
- Mobile node waits to receive an Agent Advertisement.
- Mobile node registers using the peer's foreign agent care-of
or de-registers at home, depending on the values in the Agent
Advertisement.
E. A mobile node prefers a co-located care-of address and the peer
does not implement the Mobile-IPv4 Configuration Option. The
peer is, however, capable of assigning dynamic addresses:
(1)(d) Request(IP=0,MIPv4=Home) / Reject(MIPv4=Home)
(5)(a) Request(IP=0) / Nak(IP=a.b.c.d)
(6)(a) Request(IP=a.b.c.d) / Ack(IP=a.b.c.d)
- IPCP completes.
- Mobile node registers using a.b.c.d as a co-located care-of
address with its home agent.
F. A mobile node prefers a co-located care-of address and the peer
does not implement the Mobile-IPv4 Configuration Option. The peer
is not capable of assigning dynamic addresses:
(1)(e) Request(IP=0,MIPv4=Home) / Reject(IP=0,MIPv4=Home)
(7)(a) Request() / Ack()
- IPCP completes.
- Mobile node sends an Agent Solicitation and/or attempts to
obtain a co-located care-of address via means outside IPCP
(e.g., DHCP or manual configuration), or it gives up.
Solomon & Glass Standards Track [Page 13]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
3. Additional Requirements
3.1. Other IPCP Options
A mobile node MUST NOT include the deprecated IP-Addresses option in
any Configure-Request that contains a Mobile-IPv4 option, an IP-
Address option, or both.
Conversely, the mobile node MAY include an IP-Compression-Protocol
option and any other options that do not involve the negotiation of
IP addresses.
If a mobile node and a foreign agent or a home agent agree in IPCP to
use Van Jacobson Header Compression [RFC 1144], then the mobile node
MUST NOT set the 'V' bit in its ensuing Mobile IP Registration
Request [RFC 2002]. If the PPP peer entities are utilizing VJ header
compression there is no gain for the mobile ip entities to do so, and
requesting this option is likely to cause confusion.
3.2. Move Detection
Mobile nodes that connect via PPP MUST correctly implement PPP's
IPCP, since movement by the mobile node will likely change its PPP
peer. Specifically, mobile nodes MUST be prepared to renegotiate
IPCP at any time, including, the renegotiation of the IP-Address
Configuration Option and the Mobile-IPv4 Configuration Option
described in this document. As per [RFC 1661], a mobile node in the
Opened state MUST renegotiate IPCP upon receiving an IPCP Configure-
Request from its peer.
Also note that certain wireless links can employ handoff and proxying
mechanisms that would not necessarily require bringing down a PPP
link but would indeed require a mobile node to register with a new
foreign agent. Therefore, mobile nodes which connect to an agent via
PPP MUST employ their move detection algorithms (see section 2.4.2 in
[RFC 2002]) and register whenever they detect a change in
connectivity.
Specifically, a mobile node that fails to receive an Agent
Advertisement within the Lifetime advertised by its current foreign
agent, MUST assume that it has lost contact with that foreign agent
(see Section 2.4.2.1, [RFC 2002]). If, in the mean time, the mobile
node has received Agent Advertisements from another foreign agent,
the mobile node SHOULD immediately register with that foreign agent
upon timing out with its current foreign agent.
Solomon & Glass Standards Track [Page 14]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
Likewise, a mobile node that implements move detection based upon the
Prefix-Length Extension MUST compare the prefix of any advertising
agents with that of its current foreign agent (see Section 2.4.2.2,
[RFC 2002]). If such a mobile node receives an Agent Advertisement
from a foreign agent specifying a different prefix than that of its
current foreign agent, then the mobile node that employs this method
of move detection MUST register with that new foreign agent.
A mobile node MAY treat PPP link-establishment as a sufficient reason
to proceed with a new Mobile IP registration. Section 2 defines the
circumstances under which mobile nodes MUST wait for an Agent
Advertisement before registering. Accordingly, foreign agents and
home agents SHOULD send an Agent Advertisement over a PPP link
immediately after IPCP for that link enters the Opened state.
4. Security Considerations
This document introduces no known security threats over and above
those facing any node on the Internet that either connects via PPP or
implements Mobile IP or both. Specifically, service providers should
use cryptographically strong authentication (e.g., CHAP [RFC 1994])
to prevent theft-of-service. Additionally, users requiring
confidentiality should use PPP link encryption [RFC 1968], IP-layer
encryption [RFC 1827], or application-layer encryption, depending
upon their individual requirements. Finally, Mobile IP
authentication [RFC 2002] protects against trivial denial-of-service
attacks that could otherwise be waged against a mobile node and its
home agent.
5. References
[RFC 2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC 1144] Jacobson, V., "Compressing TCP/IP Headers for Low-Speed
Serial Links", RFC 1144, January 1990.
[RFC 1332] McGregor, G., "The PPP Internet Protocol Control Protocol
(IPCP)," RFC 1332, May 1992.
[RFC 1661] Simpson, W., Editor, "The Point-to-Point Protocol (PPP)
for the Transmission of Multi-protocol Datagrams over Point-to-
Point Links", STD 51, RFC 1661, July 1994.
[RFC 1827] Atkinson, R., "IP Encapsulating Security Payload (ESP)",
RFC 1827, August 1995.
Solomon & Glass Standards Track [Page 15]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
[RFC 1994] Simpson, W., "PPP Challenge Handshake Authentication
Protocol (CHAP)", RFC 1994, August 1996.
[RFC 1968] Meyer, G., "The PPP Encryption Control Protocol (ECP)",
RFC 1968, June 1996.
[RFC 2002] Perkins, C., Editor, "IP Mobility Support", RFC 2002,
October 1996.
6. Acknowledgments
The design of this protocol and option were inspired by an earlier
submission by B. Patel and C. Perkins, then of IBM, in a now expired
internet draft. Also, some of William Simpson's text was copied
verbatim from [RFC 1661] in order to ensure consistency of
terminology and specification. The same goes for some of Charlie
Perkins' definitions, and other relavent text, from [RFC 2002].
Tim Wilson and Chris Stanaway (Motorola) contributed significantly to
the design of this Configuration Option and protocol specification.
Special thanks to Vernon Schryver (SGI), Craig Fox (Cisco), Karl Fox
(Ascend), and John Bray (FTP) for their helpful suggestions,
comments, and patience.
7. Authors' Addresses
Jim Solomon
Motorola, Inc.
1301 E. Algonquin Rd. - Rm 2240
Schaumburg, IL 60196
Phone: +1-847-576-2753
Fax: +1-847-576-3240
EMail: solomon@comm.mot.com
Steven Glass
FTP Software, Inc.
2 High Street
North Andover, MA 01845
Phone: +1-508-685-4000
Fax: +1-508-684-6105
EMail: glass@ftp.com
Solomon & Glass Standards Track [Page 16]
^L
RFC 2290 Mobile-IPv4 Option for PPP IPCP February 1998
8. Full Copyright Statement
Copyright (C) The Internet Society (1998). All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS 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.
Solomon & Glass Standards Track [Page 17]
^L
|