OSDN Git Service

2013.10.24
[uclinux-h8/uClinux-dist.git] / freeswan / klips / doc / klipsNGreq / requirements / 001 / requirement001.tex
1 \subsection{001: changeable gw wild-side addresses on-the-fly}
2
3 \subsubsection{001: Definition of requirement}
4
5 Some systems use DHCP or IPCP (PPP) to get an address assigned. DHCP in
6 particular has a clear lease time, and at the end of the lease, a different
7 IP address may be assigned. 
8
9 The requirement is for \freeswan\ to interact with address assignment
10 facilities, adjust lifetime parameters appropriately, and to transparently 
11 change systems with the address change.
12
13 \subsubsection{001: response}
14
15 The movement away from a layered device model means that KLIPS should not
16 interfere with this process. Most of the issues should be on the key
17 management side (\pluto\ ).
18
19 The specific requirements for pluto are that it is willing to listen to
20 the routing socket so that it can learn about new interfaces, and about
21 routes. If there is no route to the remote IKE daemon, then there is no point 
22 in attempting to initiate.
23
24 Further, consider the case where our wild-side address {\em changes}.  
25 We need a hook so that pluto is notified so that it can notify all the
26 affected peers. 
27
28 The peers need to change the outer-header destination address on all packets
29 destined for us.  And in the general case, this requires rekeying the affected tunnels.  
30 (Future specification may in fact make this unnecessary, but pre-existing
31 peers will continue to exist)
32
33 The specific requirements for the startup script are that the default
34 route (or any routes for that matter) need not exist to permit the ``conn'' to
35 be configured.
36
37 See also requirement 4.
38
39 This requirement is useful for Opportunistic Encryption.
40
41
42