Bv9ARM.ch04.html revision 035cd7b5bd983b3845da08680ac311c754809403
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic>Advanced Concepts</TITLE
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavicNAME="GENERATOR"
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavicCONTENT="Modular DocBook HTML Stylesheet Version 1.61
4da61833a1cbbca94094f9653fd970582b97a72etrawickTITLE="BIND 9 Administrator Reference Manual"
4da61833a1cbbca94094f9653fd970582b97a72etrawickREL="PREVIOUS"
4789804be088bcd86ae637a29cdb7fda25169521jailletcTITLE="Nameserver Configuration"
4789804be088bcd86ae637a29cdb7fda25169521jailletcTITLE="The BIND 9 Lightweight Resolver"
e50c3026198fd496f183cda4c32a202925476778covenerCLASS="chapter"
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrinBGCOLOR="#FFFFFF"
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrinTEXT="#000000"
6c3b9cebb551140fbb25d58bae08b539b3802133ylavicLINK="#0000FF"
6c3b9cebb551140fbb25d58bae08b539b3802133ylavicVLINK="#840084"
6c3b9cebb551140fbb25d58bae08b539b3802133ylavicALINK="#0000FF"
4f29b65ab4b547ad5dbe506e2d0ff5d12ead9247ylavicCLASS="NAVHEADER"
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavicWIDTH="100%"
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavicCELLPADDING="0"
69301145375a889e7e37caf7cc7321ac0f91801erpluemCELLSPACING="0"
506bfe33206b2fece40ef25f695af39dd4130facjkaluzaALIGN="center"
506bfe33206b2fece40ef25f695af39dd4130facjkaluza>BIND 9 Administrator Reference Manual</TH
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sfALIGN="left"
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sfVALIGN="bottom"
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavicALIGN="center"
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavicVALIGN="bottom"
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicALIGN="right"
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicVALIGN="bottom"
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerALIGN="LEFT"
44ff304057225e944e220e981d434a046d14cf06covenerCLASS="chapter"
5d1ba75b8794925e67591c209085a49279791de9covener>Chapter 4. Advanced Concepts</A
caad2986f81ab263f7af41467dd622dc9add17f3ylavic>Table of Contents</B
f7317ff316c2b141feea31bddb74d5d3fa1584edjortonHREF="Bv9ARM.ch04.html#dynamic_update"
2165214331e4afafca4048f66f303d0253d7b001covener>Dynamic Update</A
1e2d421a36999d292042a5539971070d54aa6c63ylavicHREF="Bv9ARM.ch04.html#incremental_zone_transfers"
1e2d421a36999d292042a5539971070d54aa6c63ylavic>Incremental Zone Transfers (IXFR)</A
0b67eb8568cd58bb77082703951679b42cf098actrawick>Split DNS</A
49dacedb6c387b786b7911082ff35121a45f414bcovener>IPv6 Support in <SPAN
cfd9415521847b2f9394fad04fb701cfb955f503rjungCLASS="acronym"
28c31fb73c1264bd1d0ff932573677030b024c7dwroweCLASS="sect1"
63b9f1f5880391261705f696d7d65507bbe9ace3covenerCLASS="sect1"
63b9f1f5880391261705f696d7d65507bbe9ace3covenerNAME="dynamic_update"
49dacedb6c387b786b7911082ff35121a45f414bcovener>4.1. Dynamic Update</A
49dacedb6c387b786b7911082ff35121a45f414bcovener>Dynamic update is the term used for the ability under
3c990331fc6702119e4f5b8ba9eae3021aea5265jim certain specified conditions to add, modify or delete records or
3c990331fc6702119e4f5b8ba9eae3021aea5265jim RRsets in the master zone files. Dynamic update is fully described
3c990331fc6702119e4f5b8ba9eae3021aea5265jim in RFC 2136.</P
fc42512879dd0504532f52fe5d0d0383dda96a1eniq>Dynamic update is enabled on a zone-by-zone basis, by
fc42512879dd0504532f52fe5d0d0383dda96a1eniq including an <B
fc42512879dd0504532f52fe5d0d0383dda96a1eniqCLASS="command"
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq>allow-update</B
da0442c0440caef34706e2c2f3af05cb65921cc0jailletcCLASS="command"
983528026996668ea295be95aedb9c7a346af470ylavic>update-policy</B
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc> clause in the
06b8f183140c8e02e0974e938a05078b511d1603covenerCLASS="command"
06b8f183140c8e02e0974e938a05078b511d1603covener> statement.</P
259878293a997ff49f5ddfc53d3739cbdc25444ecovener>Updating of secure zones (zones using DNSSEC) is modelled
259878293a997ff49f5ddfc53d3739cbdc25444ecovener after the <I
259878293a997ff49f5ddfc53d3739cbdc25444ecovenerCLASS="emphasis"
259878293a997ff49f5ddfc53d3739cbdc25444ecovener>simple-secure-update</I
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem> proposal, a
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin work in progress in the DNS Extensions working group of the IETF.
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrinHREF="http://www.ietf.org/html.charters/dnsext-charter.html"
65967d05f839dbf27cf91d91fa79585eeae19660minfrinTARGET="_top"
65967d05f839dbf27cf91d91fa79585eeae19660minfrin>http://www.ietf.org/html.charters/dnsext-charter.html</A
65967d05f839dbf27cf91d91fa79585eeae19660minfrin for information about the DNS Extensions working group.) SIG and
8152945ae46857b170cb227e79bb799f4fc7710dminfrin NXT records affected by updates are automatically regenerated by
8152945ae46857b170cb227e79bb799f4fc7710dminfrin the server using an online zone key. Update authorization is based
8152945ae46857b170cb227e79bb799f4fc7710dminfrin on transaction signatures and an explicit server policy.</P
75f5c2db254c0167a0e396254460de09b775d203trawick>The zone files of dynamic zones cannot normally be edited by hand.
75f5c2db254c0167a0e396254460de09b775d203trawick The zone file on disk at any given time may not contain the latest
75f5c2db254c0167a0e396254460de09b775d203trawick changes performed by dynamic update. The zone file is only
4f0358189bfa57b8e75bd6b94db264302a8f336amrumph written to disk only occasionally, and when shutting down the server using
4f0358189bfa57b8e75bd6b94db264302a8f336amrumphCLASS="command"
5716f9c6daa92dde5f2f9d11ed63f7c9549c223atrawick>rndc stop</B
5716f9c6daa92dde5f2f9d11ed63f7c9549c223atrawick>. Changes that have occurred since the
5716f9c6daa92dde5f2f9d11ed63f7c9549c223atrawick zone file was last written to disk are stored only in the zone's
5716f9c6daa92dde5f2f9d11ed63f7c9549c223atrawick journal (<TT
54d750a84a175d8e338880514d440773eb986b50covenerCLASS="filename"
54d750a84a175d8e338880514d440773eb986b50covener>If you have to make changes to a dynamic zone
54d750a84a175d8e338880514d440773eb986b50covener manually, the following procedure will work: Shut down
54d750a84a175d8e338880514d440773eb986b50covener the server using <B
54d750a84a175d8e338880514d440773eb986b50covenerCLASS="command"
7a3aa12f0eda24793ee26d6a179bd53132e9dae8covener>rndc stop</B
54d750a84a175d8e338880514d440773eb986b50covener> (sending a signal
54d750a84a175d8e338880514d440773eb986b50covener or using <B
83b50288fa7d306324bba68832011ea08f5c7832covenerCLASS="command"
4e30ef014533a7e93c92d88306291f5e49c9692ftrawick>rndc halt</B
5f066f496cd9f20a2a701255bc67d44e7cb46daetrawickCLASS="emphasis"
2e15620d724fb8e3a5be183b917359a2fd6e9468covener sufficient). Wait for the server to exit,
2e15620d724fb8e3a5be183b917359a2fd6e9468covenerCLASS="emphasis"
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener> the zone's
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covenerCLASS="filename"
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovener> file, edit the zone file,
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovener and restart the server. Removing the <TT
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovenerCLASS="filename"
f06e7c4b1bce6b6491e5de0b7998d3f5696b293dchrisd file is necessary because the manual edits will not be
179565be4043d7e5f9161aa75271fa0a001866d9covener present in the journal, rendering it inconsistent with the
179565be4043d7e5f9161aa75271fa0a001866d9covener contents of the zone file.</P
fce4949fb0b309a5744afcd503c6ed2d35621ee2covenerCLASS="sect1"
fce4949fb0b309a5744afcd503c6ed2d35621ee2covenerCLASS="sect1"
7b7430e701e9a31ce809da7c220bb8dfcf68c86etrawickNAME="incremental_zone_transfers"
7b7430e701e9a31ce809da7c220bb8dfcf68c86etrawick>4.2. Incremental Zone Transfers (IXFR)</A
ccc20788c1e5fc973f36df634399c89acb70deaejerenkrantz>The incremental zone transfer (IXFR) protocol is a way for
ccc20788c1e5fc973f36df634399c89acb70deaejerenkrantz slave servers to transfer only changed data, instead of having to
273e512f20f262e5e2aa8e0e83371d1929fb76adjkaluza transfer the entire zone. The IXFR protocol is documented in RFC
273e512f20f262e5e2aa8e0e83371d1929fb76adjkaluza 1995. See <A
273e512f20f262e5e2aa8e0e83371d1929fb76adjkaluzaHREF="Bv9ARM.ch09.html#proposed_standards"
efe780dcf13b2b95effabf897d694d8f23feac74trawick>Proposed Standards</A
fe83f60b41477b14a37edcfcd1f7f5c5a1ebfe44minfrin>When acting as a master, <SPAN
993d1261a278d7322bccef219101220b7b4fb8c5jkaluzaCLASS="acronym"
993d1261a278d7322bccef219101220b7b4fb8c5jkaluza> 9 supports IXFR for those zones
ba050a6f942b9fa0e81ed73437588005c569655ccovenerwhere the necessary change history information is available. These
ba050a6f942b9fa0e81ed73437588005c569655ccovenerinclude master zones maintained by dynamic update and slave zones
ba050a6f942b9fa0e81ed73437588005c569655ccovenerwhose data was obtained by IXFR, but not manually maintained master
ba050a6f942b9fa0e81ed73437588005c569655ccovenerzones nor slave zones obtained by performing a full zone transfer
135ddda3a989215d2bedbcf1529bfb269c3eda23niq>When acting as a slave, <SPAN
001a44c352f89c9ec332ffd3e0a6927dcd19432chumbedoohCLASS="acronym"
001a44c352f89c9ec332ffd3e0a6927dcd19432chumbedooh> 9 will attempt to use IXFR unless
efe780dcf13b2b95effabf897d694d8f23feac74trawickit is explicitly disabled. For more information about disabling
793214f67dede32edfd9ee96c664ead04d175cbbjfclereIXFR, see the description of the <B
cc5a4a08dc9783fcbc52ce86f11e01c281a43810minfrinCLASS="command"
9b0076ddd1103e5fa9c1f9bafde4b06ce244fbaecovener>request-ixfr</B
249d09d51808cb7981af99762c3b3736ca126cd5jkaluzaCLASS="command"
249d09d51808cb7981af99762c3b3736ca126cd5jkaluza> statement.</P
56589be3d7a3e9343370df240010c6928cc78b39jkaluzaCLASS="sect1"
77ca16c5676da23155311e13cee61e7eaba9fa3ejailletcCLASS="sect1"
77ca16c5676da23155311e13cee61e7eaba9fa3ejailletcNAME="AEN673"
77ca16c5676da23155311e13cee61e7eaba9fa3ejailletc>4.3. Split DNS</A
f87299dab99bc04b51a6b8cad51b6795db862c0atrawick>Setting up different views, or visibility, of DNS space to
4d12805e6c18253040223ea637acd6b3b3c18f60jortoninternal and external resolvers is usually referred to as a <I
4d12805e6c18253040223ea637acd6b3b3c18f60jortonCLASS="emphasis"
85eacfc96a04547ef25aabbc06440039715084c2jorton> setup. There are several reasons an organization
e5d909f2b06bd880fb3675cd49363df981caa631trawickwould want to set up its DNS this way.</P
a4df2cd1e1391575a327c2a90ba4315f805a0a78covener>One common reason for setting up a DNS system this way is
a4df2cd1e1391575a327c2a90ba4315f805a0a78covenerto hide "internal" DNS information from "external" clients on the
cb666b29f81df1d11d65002250153353568021fccovenerInternet. There is some debate as to whether or not this is actually useful.
cb666b29f81df1d11d65002250153353568021fccovenerInternal DNS information leaks out in many ways (via email headers,
cb666b29f81df1d11d65002250153353568021fccovenerfor example) and most savvy "attackers" can find the information
6a80c3c6f4b8ea7ba5e89402b8b779b09ce020e0covenerthey need using other means.</P
6a80c3c6f4b8ea7ba5e89402b8b779b09ce020e0covener>Another common reason for setting up a Split DNS system is
75a230a728338d84dcfe81edd375352f34de22d0covenerto allow internal networks that are behind filters or in RFC 1918
75a230a728338d84dcfe81edd375352f34de22d0covenerspace (reserved IP space, as documented in RFC 1918) to resolve DNS
75a230a728338d84dcfe81edd375352f34de22d0coveneron the Internet. Split DNS can also be used to allow mail from outside
1f50dc34ae069adeed20b2986e5ffdefa5c410e0covenerback in to the internal network.</P
1f50dc34ae069adeed20b2986e5ffdefa5c410e0covener>Here is an example of a split DNS setup:</P
63a5ea80bddcc84a462e40f402b4f330e0e05411covener>Let's say a company named <I
63a5ea80bddcc84a462e40f402b4f330e0e05411covenerCLASS="emphasis"
63a5ea80bddcc84a462e40f402b4f330e0e05411covener>Example, Inc.</I
65a4e663b82f8bce28ac22ab2edfd7502de36998sfhas several corporate sites that have an internal network with reserved
65a4e663b82f8bce28ac22ab2edfd7502de36998sfInternet Protocol (IP) space and an external demilitarized zone (DMZ),
65a4e663b82f8bce28ac22ab2edfd7502de36998sfor "outside" section of a network, that is available to the public.</P
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrinCLASS="emphasis"
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin>Example, Inc.</I
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin> wants its internal clients
a511a29faf2ff7ead3b67680154a624effb31aafminfrinto be able to resolve external hostnames and to exchange mail with
a511a29faf2ff7ead3b67680154a624effb31aafminfrinpeople on the outside. The company also wants its internal resolvers
a511a29faf2ff7ead3b67680154a624effb31aafminfrinto have access to certain internal-only zones that are not available
a511a29faf2ff7ead3b67680154a624effb31aafminfrinat all outside of the internal network.</P
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin>In order to accomplish this, the company will set up two sets
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrinof nameservers. One set will be on the inside network (in the reserved
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrinIP space) and the other set will be on bastion hosts, which are "proxy"
deec48c67d4786bc77112ffbf3a4e70b931097edminfrinhosts that can talk to both sides of its network, in the DMZ.</P
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin>The internal servers will be configured to forward all queries,
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrinexcept queries for <TT
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrinCLASS="filename"
5c43d2fb853f84497b5ece2d414ef9484aa87e5fsfCLASS="filename"
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niqCLASS="filename"
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niqCLASS="filename"
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq>, to the servers in the
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niqDMZ. These internal servers will have complete sets of information
c12917da693bae4028a1d5a5e8224bceed8c739dsfCLASS="filename"
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsfCLASS="filename"
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsfCLASS="emphasis"
d7ffd2da16d58b1a0de212e4d56f7aebb72bef26sfCLASS="filename"
9811aed12bbc71783d2e544ccb5fecd193843eadsfCLASS="filename"
88fac54d9d64f85bbdab5d7010816f4377f95bd7rjung>To protect the <TT
bd3f5647b96d378d9c75c954e3f13582af32c643sfCLASS="filename"
bd3f5647b96d378d9c75c954e3f13582af32c643sfCLASS="filename"
2a7beea91d46beb41f043a84eaad060047ee04aafabienthe internal nameservers must be configured to disallow all queries
2a7beea91d46beb41f043a84eaad060047ee04aafabiento these domains from any external hosts, including the bastion
584a85dd4047e38d3ed3a29b6662fcc9d100ae4csf>The external servers, which are on the bastion hosts, will
584a85dd4047e38d3ed3a29b6662fcc9d100ae4csfbe configured to serve the "public" version of the <TT
f21e9e3d0bfb7a507ecc5bc963f2159d693503d1sfCLASS="filename"
f6b9c755a0b793e8a3a3aebd327ca20a86478117sfCLASS="filename"
132ee6ac1c26d6e8953836316ba50734eefab47bsfThis could include things such as the host records for public servers
132ee6ac1c26d6e8953836316ba50734eefab47bsfCLASS="filename"
85eacfc96a04547ef25aabbc06440039715084c2jortonCLASS="filename"
536d2e7cd1fdec1255b8c3bdf41fdc714c506a54trawickand mail exchange (MX) records (<TT
536d2e7cd1fdec1255b8c3bdf41fdc714c506a54trawickCLASS="filename"
79c5787b92ac5f0e1cc82393816c77a006399316trawickCLASS="filename"
79c5787b92ac5f0e1cc82393816c77a006399316trawick>In addition, the public <TT
79c5787b92ac5f0e1cc82393816c77a006399316trawickCLASS="filename"
7b395e4e878c28a4784919cfd2e704ddd14a3390jortonCLASS="filename"
7b395e4e878c28a4784919cfd2e704ddd14a3390jortonshould have special MX records that contain wildcard (`*') records
536e48c08d674acac5d44929318f2ad928edc361jortonpointing to the bastion hosts. This is needed because external mail
536e48c08d674acac5d44929318f2ad928edc361jortonservers do not have any other way of looking up how to deliver mail
e81785da447b469da66f218b3f0244aab507958djortonto those internal hosts. With the wildcard records, the mail will
e81785da447b469da66f218b3f0244aab507958djortonbe delivered to the bastion host, which can then forward it on to
3e4e54d4e3fc0123c63d57aa84ac7ad7a8c73ff8jortoninternal hosts.</P
3e4e54d4e3fc0123c63d57aa84ac7ad7a8c73ff8jorton>Here's an example of a wildcard MX record:</P
53e9b27aba029b18be814df40bcf6f0428771d1efuankgCLASS="programlisting"
53e9b27aba029b18be814df40bcf6f0428771d1efuankgCLASS="literal"
ca61ccd0c306c2c72df153688ba1b49f3eceed80sf>Now that they accept mail on behalf of anything in the internal
6bb524f1895f30265a1431afc460977d391cb36bsfnetwork, the bastion hosts will need to know how to deliver mail
e6dd71992459d05a676b98b7963423dc5dc1e24aminfrinto internal hosts. In order for this to work properly, the resolvers on
e6dd71992459d05a676b98b7963423dc5dc1e24aminfrinthe bastion hosts will need to be configured to point to the internal
e6dd71992459d05a676b98b7963423dc5dc1e24aminfrinnameservers for DNS resolution.</P
23f1535d6a60817d2846bac0aea230ea475d7dccminfrin>Queries for internal hostnames will be answered by the internal
23f1535d6a60817d2846bac0aea230ea475d7dccminfrinservers, and queries for external hostnames will be forwarded back
23f1535d6a60817d2846bac0aea230ea475d7dccminfrinout to the DNS servers on the bastion hosts.</P
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung>In order for all this to work properly, internal clients will
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjungneed to be configured to query <I
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjungCLASS="emphasis"
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung> the internal
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjungnameservers for DNS queries. This could also be enforced via selective
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjungfiltering on the network.</P
6249dfa569d3b4f1f539665b979a80c6e335d93etrawick>If everything has been set properly, <I
6249dfa569d3b4f1f539665b979a80c6e335d93etrawickCLASS="emphasis"
0827cb14e550f6f65018431c22c2c913631c8f25kbrand>Example, Inc.</I
ae600ca541efc686b34f8b1f21bd3d0741d37674covenerinternal clients will now be able to:</P
cfa64348224b66dd1c9979b809406c4d15b1c137fielding>Look up any hostnames in the <TT
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajimCLASS="literal"
HREF="Bv9ARM.ch03.html#sample_configuration"
zone "site1.example.com" { // sample slave zone
zone "site2.example.com" {
zone "site1.internal" {
zone "site2.internal" {
zone "site1.example.com" { // sample slave zone
zone "site2.example.com" {
HREF="Bv9ARM.ch09.html#proposed_standards"
HREF="Bv9ARM.ch06.html#dynamic_update_policies"
that the tools shipped with BIND 9.0.x are not fully compatible
HREF="Bv9ARM.ch05.html"
HREF="Bv9ARM.ch09.html#ipv6addresses"
> $ORIGIN example.com.
> $ORIGIN example.com.
> $ORIGIN example.com.
host 3600 IN A6 64 0:0:0:0:42::1 company.example1.net.
host 3600 IN A6 64 0:0:0:0:42::1 company.example2.net.
> $ORIGIN example1.net.
> $ORIGIN example2.net.
> $ORIGIN example.com.
> $ORIGIN 0.6.8.1.1.0.2.0.0.5.0.8.e.f.f.3.ip6.int.
1.0.0.0.0.0.0.0.0.0.0.0.2.4.0.0 14400 IN PTR host.example.com.
> $ORIGIN example.com.
host IN A6 64 ::1234:5678:1212:5675 cust1.example.net.
IN A6 64 ::1234:5678:1212:5675 subnet5.example2.net.
$ORIGIN example.net.
cust1 IN A6 48 0:0:0:dddd:: ipv6net.example.net.
$ORIGIN example2.net.
subnet5 IN A6 48 0:0:0:1:: ipv6net2.example2.net.
> $ORIGIN ipv6-rev.example.com.
HREF="Bv9ARM.ch03.html"
HREF="Bv9ARM.html"
HREF="Bv9ARM.ch05.html"