Internet DRAFT - draft-ietf-dhc-proxyserver-opt
draft-ietf-dhc-proxyserver-opt
Network Working Group
Internet Draft Senthil K Balasubramanian
Expires: December 2006 Intoto
Michael Alexander
Gustaf Neumann
Wirtschaftsuniversitaet Wien
June 2006
DHCP Option for Proxy Server Configuration
draft-ietf-dhc-proxyserver-opt-05.txt
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as
Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on December 2006.
Copyright Notice
Copyright (C) The Internet Society (2006).
Abstract
This document defines a new Dynamic Host Configuration Protocol
DHCP) option, which can be used to configure the TCP/IP host's
Proxy Server configuration for standard protocols like HTTP,FTP,
NNTP,SOCKS, Gopher, SLL and etc. Proxy Server provides controlled
and efficient access to the Internet by access control mechanism
for different types of user requests and caching frequently accessed
information (Web pages and possibly files that might have been
Balasubramanian, et al. Expires - December 2006 [Page 1]
Internet-Draft DHCP Option for Proxy Server Configuration June 2006
downloaded using FTP and other protocols).
1. Terminologies Used
DHCP Client: A DHCP [RFC-2131] client is an Internet host that
uses DHCP to obtain configuration information such as a
network address.
DHCP Server: A DHCP server [RFC-2131] is an Internet host that
returns configuration parameters to DHCP clients.
Proxy Server: In an enterprise network that connects to Internet, a
proxy server is a server that acts as an intermediary between a
workstation user and the Internet so that the enterprise can
ensure security and administrative control. A Proxy server MAY
provide caching services or be associated with or part of a
gateway server that separates the enterprise network from
the outside network (usually the Internet) and a firewall
that protects the enterprise network from outside intrusion.
PAC : PAC stands for Proxy Auto-Configuration. It is a file
that contains information about the proxy servers to be used.
Most of the browsers support Proxy Auto Configuration File
format to specify the proxies to be used.
URI : Uniform Resource Identifier [RFC-3986]. A Uniform
Resource Identifier is a formatted string that serves as an
identifier for a resource, typically on the Internet. The
formatted string comprises a name or address that can be used
to refer to a internet resource. URIs in common practice include
Uniform Resource Locators(URLs). The following are the examples
of URI:
http://www.ietf.org/rfc/rfc1234.txt
ftp://ftp.isi.edu/rfc/rfc124.txt
In addition to identifying a resource, the URI also provides a
means of acting upon or obtaining a representation of the
resource by describing its primary access mechanism. For
example, http://www.ietf.org is a URI that identifies a resource
and implies that the resource is accessible through HTTP
protocol.
2. Introduction
The Dynamic Host Configuration Protocol [RFC-2131] provides a
framework for passing configuration information to hosts on a
TCP/IP network. This document describes a DHCP configuration
option that can be used to inform a DHCP client of the IP
Balasubramanian, et al. Expires - December 2006 [Page 2]
Internet-Draft DHCP Option for Proxy Server Configuration June 2006
addresses and properties of one or more proxy services that are
either available to it or that must be used in order to access
internet services, for example through a coporate firewall.
The following diagram depicts the typical setup of a proxy server
providing proxy services to clients on a network that is protected
by a firewall
+---------------------------+ +-----------+
| | |Remote HTTP|
| | HTTP |Server |
| +------------+ +-------------+<--->+-----------+
| | Clients | |Proxy Server |
| | Inside the |<------>| + | FTP +-----------+
| | Firewall | |Firewall |<--->|Remote FTP |
| +------------+ +-------------+ |Server |
| | ^ +-----------+
| | |
| | | +-----------+
+---------------------------+ | NNTP |Remote NNTP|
+------------>|Server |
+-----------+
The primary use of proxies is to allow access to the World Wide Web
from within a firewall. A proxy service typically runs on firewall
machine. It waits for a request from inside the firewall, forwards
the request to the remote server outside the firewall, reads the
response and then sends it back to the client. Usually, all the
clients use the same proxy within a given network, which helps in
efficient caching of documents that are requested by a number of
clients. Similarly, proxies can provide document caching functions
on the outside Internet.
A proxy server can increase network security and user productivity
by filtering content and controlling both internal and external
access to information. Also, it provides several other
functionalities that are not discussed here.
3. Requirements terminology
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].
4. Proxy Server Configuration Option
This document defines a new DHCP Option called the Proxy Server
Configuration Option. The format of the Proxy Server configuration
option is:
Balasubramanian, et al. Expires - December 2006 [Page 3]
Internet-Draft DHCP Option for Proxy Server Configuration June 2006
Code Len Proxy Server Configuration Field
+------+------+------+------+------+------+--...-+------+
| TBD | N | i1 | i2 | i3 | i4 | | iN |
+------+------+------+------+------+------+--...-+------+
Code is TBD and will be assigned by IANA according to [RFC-2939].
The length N gives the total number of octets in the proxy server
configuration field.
The Proxy server configuration field consists of SubOpt/Length/Value
tuples for each sub-option, encoded in the following manner:
SubOpt Len Sub-option Value
+------+------+------+------+------+------+--...-+------+
| 1 | N | s1 | s2 | s3 | s4 | | sN |
+------+------+------+------+------+------+--...-+------+
SubOpt Len Sub-option Value
+------+------+------+------+------+------+--...-+------+
| 2 | N | i1 | i2 | i3 | i4 | | iN |
+------+------+------+------+------+------+--...-+------+
The length N of the DHCP Proxy Server Information Option shall
include all bytes of the sub-option code/length/value tuples. The
length N of the sub-options shall be the number of octets in only
that sub-option's value field. The sub-option need not appear in
sub-option code order. No pad sub-option is defined, and the proxy
server configuration field shall NOT be terminated with a 255 sub-
option. The initial assignment of DHCP Proxy Server Sub-options is as
follows
+------------------+------------------------+
|DHCP Proxy Server | Sub Option Description |
|Sub Option Code | |
+------------------+------------------------+
| 1 | PAC URI |
|------------------+------------------------+
| 2 | MD5 Digest of PAC URI |
+------------------+------------------------+
5. Proxy Server Configuration Sub Options
5.1 PAC URI Sub Option and MD5 Digest Sub Option of PAC URI
Balasubramanian, et al. Expires - December 2006 [Page 4]
Internet-Draft DHCP Option for Proxy Server Configuration June 2006
The PAC URI Sub Option specifies an URI in the UTF-8[STD-63] format.
The length of the sub-option is actually depends on the scheme used
to specify an URI. However, it MUST be restricted to a maximum of 255
octets. The DHCP Server MAY compute MD5[MD5] digest on the PAC URI
configured and send the value in MD5 Digest Sub Option(Sub Option 2).
The DHCP Client on receiving this sub-option MUST compute MD5 digest
on the URI received in the PAC URI Sub Option and match it with the
digest present in MD5 Digest Sub Option. If the calculated MD5 digest
doesn't match with the received MD5 digest, then the DHCP client MUST
drop this configuration. The PAC URI Sub-Option is as follows:
SubOpt Len PAC URI Sub-Option
+-----+-----+-----+-----+-----+--...-+------+
| 1 | N | c1 | c2 | c3 | | cN |
+-----+-----+-----+-----+-----+--...-+------+
SubOpt Len MD5 Digest Sub Option
+-----+-----+-----+-----+-----+--...-+------+
| 2 | N | c1 | c2 | c3 | | cN |
+-----+-----+-----+-----+-----+--...-+------+
The MD5 sub option is OPTIONAL and DHCP Server MAY send it if it
calculates MD5 digest on the PAC URI.
6. Option Usage
The DHCP Proxy server configuration option MUST always carry PAC URI
Sub Option. However MD5 Digest of PAC URI Sub Option is OPTIONAL.
This is provided for additional security. If the length of the Proxy
server configuration option exceeds the maximum permissible within a
single option (255 octets), then the Configuration Option MUST be
represented in the DHCP message as specified in [RFC-3396].
7. Security Considerations
The DHCP Options defined here allow an intruder DHCP server to
misdirect a client, causing it to access a nonexistent or
malicious proxy server. This allows for a denial of service or
man-in-the-middle attacks. The latter security consideration is
a well known property of the DCHP protocol; this option does not
create any additional risk of such attacks.
DHCP provides an authentication mechanism, as described in
[RFC-3118], which may be used if authentication is required.
8. IANA Considerations
IANA is requested to assign an option code to the Proxy Server
Configuration Option and protocol numbers for the SSL and RDF
Balasubramanian, et al. Expires - December 2006 [Page 5]
Internet-Draft DHCP Option for Proxy Server Configuration June 2006
protocol.
9. Normative References
[RFC-2131] Droms, R., "Dynamic Host Configuration Protocol",
RFC 2131, March 1997.
[RFC-2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC-3396] Lemon, T. and S. Cheshire, "Encoding Long DHCP Options",
RFC 3396, November 2002.
[STD63] Yergeau, F., "UTF-8, a transformation format of
ISO 10646", STD 63, RFC 3629, November 2003.
[MD5] Rivest, R., "The MD5 Message-Digest Algorithm",
RFC 1321, April 1992.
10. Informative References
[RFC-3118] Droms, R. and W. Arbaugh, "Authentication for DHCP
Messages", RFC 3118, June 2001.
[RFC-2939] Droms, R., "Procedures and IANA Guidelines for
Definition of New DHCP Options and Message Types", BCP 43,
RFC 2939, September 2000.
[RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
Resource Identifiers (URI): Generic Syntax", RFC 3986,
January 2005.
11. Acknowledgments
Thanks to the DHC Working Group for their time and input into the
specification. In particular, thanks to (in alphabetical order)
Bernie Volz, Ralph Droms, Robert Elz, Stig Venaas and Ted Lemon
for their thorough review.
Author's Addresses
Senthil Kumar Balasubramanian
Intoto Software (I) Pvt Ltd.,
New No 5, Old No 3, First Street,
Nandanam Extension,
Chennai, India
Balasubramanian, et al. Expires - December 2006 [Page 6]
Internet-Draft DHCP Option for Proxy Server Configuration June 2006
Phone: +91 44 5211 2783/4/5
Email: ksenthil@intoto.com
Michael Alexander
Wirtschaftsuniversitaet Wien
Augasse 2-6
A-1090 Vienna, Austria
Phone: +43 31336 4467
Email: malexand@wu-wien.ac.at
Gustaf Neumann
Wirtschaftsuniversitaet Wien
Augasse 2-6
A-1090 Vienna, Austria
Phone: +43 31336 4671
Email: neumann@wu-wien.ac.at
Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and 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
Balasubramanian, et al. Expires - December 2006 [Page 7]
Internet-Draft DHCP Option for Proxy Server Configuration June 2006
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Copyright Statement
Copyright (C) The Internet Society (2006). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
Acknowledgment
Funding for the RFC Editor function is currently provided by the
Internet Society.
Balasubramanian, et al. Expires - December 2006 [Page 8]