You are on page 1of 5

TheCableGuyJuly,2001

UsingIPv6Today

ByTheCableGuy
Foralistandadditionalinformationonall
TheCableGuy
columns,
clickhere
.
TopicsonthisPage

IPv6Overview
6to4

6to4SupportinWindowsXP

ISATAP

Conclusion

IPv6Overview

IPv6isthereplacementfortheagingIPv4protocol,currentlyinuseacrosstheworldinTCP/IPbased
networkssuchasintranetsandtheInternet.IPv6isnotacompatiblesupersetofIPv4,butareplacement
forit.AnIPv4onlynodecannotreceiveanIPv6onlypacketandanIPv6nodecannotreceiveanIPv4
packet.HostsystemsthatcommunicatewithIPv6mustuseanimplementationofit.Typicalhostsinthe
nearfuturewillbeIPv6/IPv4hosts,usinganimplementationofbothprotocols.
AcommonmisconceptionisthatIPv6cannotbeuseduntilIPv6forwardingissupportedbytheendtoend
infrastructure,whichincludesthelocalintranetofthesourcehost,theInternet(fromthelocalInternet
serviceprovider[ISP],tothebackbone,andthentotheISPofthedestination),andtheintranetofthe
destinationhost.Thisisincorrect.Infact,thedesignersofIPv6wenttogreatlengthstoensurethatit
wouldworkfromendtoend,evenifitwereseparatedbyaninfrastructurethatdidnotsupportthe
forwardingofnativeIPv6packets.
WhentheendtoendinfrastructureisanIPv4internetwork,IPv6treatstheIPv4internetworkasalink
layer.IPv6packetsareencapsulatedwithanIPv4headerandsentfromareachableIPv4sourcetoa
reachableIPv4destination.Thereareseveraltransitiontechnologiesdesignedtofacilitatethe
communicationofIPv6/IPv4nodesacrossanIPv4infrastructure,including6to4andtheIntraSite
AutomaticTunnelAddressingProtocol(ISATAP).
AnIPv6addressis128bitslongand,forunicastIPv6addressescurrentlyinuseassignedtointerfaces,
consistsofasubnetidentifier(thehighorder64bits)andaninterfaceidentifier(theloworder64bits).
6to4usesapublicIPv4addresstocreatethe64bitsubnetidentifierportionforanIPv6address.ISATAP
usesalocallyassignedIPv4address(publicorprivate)tocreatea64bitinterfaceidentifier.

Inbothcases,IPv4addressesembeddedinportionsoftheIPv6addressprovidetheinformationrequired
todeterminethesourceanddestinationaddressesintheencapsulatingIPv4header(whentheIPv6
packetissentacrossanIPv4infrastructure).

6to4

6to4isanaddressassignmentandroutertorouterautomatictunnelingtechnologythatisusedtoprovide
unicastIPv6connectivitybetweenIPv6sitesandhostsacrosstheIPv4Internet.6to4isdescribedinRFC
3056.6to4hostsdonotrequireanymanualconfigurationandcreate6to4addressesthroughstandard
IPv6addressautoconfigurationmechanisms.6to4routers,however,requireadditionalprocessinglogicfor
encapsulationanddecapsulationand,dependingontheimplementation,mightrequireadditional
configuration.
6to4createsaglobaladdressprefixfromapublicIPv4address.IPv6globaladdresseshavethefollowing
form:
001[TLAID]:[NLAID]:[SLAID]:[InterfaceID]
where001istheformatprefixforthistypeofaddress,TLAIDidentifiesatoplevelaggregator(alarge
ISP),NLAIDidentifiesthenextlevelaggregator(intermediateISPs),SLAIDidentifiesasitelevel
aggregator(thesubnetwithinthecustomersite),andInterfaceIDidentifiesaspecificinterfaceona
subnet.
6to4usestheglobaladdressprefix2002:WWXX:YYZZ::/48,where0x002isaTLAIDreservedfor6to4
addressesandWWXX:YYZZistheNLAID,whichcorrespondstothecolonhexadecimalrepresentationofa
publicIPv4address(w.x.y.z)assignedtothehostorsite.Thefulladdressofa6to4nodeis
2002:WWXX:YYZZ:[SLAID]:[InterfaceID].
WithinanIPv6intranet,localIPv6routersadvertisea2002:WWXX:YYZZ:[SLAID]::/64prefixsothat
hostscancreateanautoconfigured6to4address.64bitprefixrouteswithintheIPv6intranetareusedto
delivertrafficbetween6to4hostsonseparatesubnets.Additionally,a2002::/16routeisusedtotunnel
IPv6traffictoother6to4hostsoutsidetheintranet.All6to4trafficthatdoesnotbelongwithinthesiteis
forwardedbytheroutinginfrastructuretothe6to4routerontheborderoftheIPv6intranet.
6to4trafficforanothersite,receivedbythe6to4router,isencapsulatedinanIPv4headerandsenttothe
destinationIPv4address,whichcorrespondstothepublicIPv4addressembeddedintheNLAIDportionof
thedestinationIPv6address.
After6to4trafficisreceivedbytheIPv4destination(a6to4router),itisdecapsulatedandforwardedto
theappropriatenodebytheroutinginfrastructureofthedestinationIPv6intranet.
RFC3056definesthefollowingterms(seeillustrationin"6to4SupportinWindowsXP"section):

6to4host
AnIPv6hostthatisconfiguredwithatleastone6to4address.

6to4router
AnIPv4/IPv6routerthatforwards6to4addressedtrafficbetween6to4hostswithinasiteandother
6to4routers(or6to4relayrouters)onanIPv4internetwork,suchastheInternet.

6to4relayrouter
AnIPv4/IPv6routerthatforwards6to4addressedtrafficbetween6to4routersandhostsonanative
IPv6testbedknownasthe6bone.

Whenyouuse6to4hosts,anIPv6routinginfrastructurewithin6to4sites,a6to4routeratsite
boundaries,anda6to4relayrouter,thefollowingtypesofcommunicationcanoccur:

A6to4hostcancommunicatewithanother6to4hostwithinthesamesite.
ThistypeofcommunicationisavailablethroughtheIPv6routinginfrastructure,whichprovides
reachabilitytoallhostswithinthesite.

A6to4hostcancommunicatewith6to4hostsinothersitesacrosstheIPv4Internet.
Thistypeofcommunicationoccurswhena6to4hostforwardsIPv6trafficthatisdestinedtoa6to4
hostinanothersitetothelocalsite6to4router.Thelocalsite6to4routerencapsulatestheIPv6
trafficwithanIPv4headerandsendsittothe6to4routeratthedestinationsiteontheInternet.The
6to4routeratthedestinationsiteremovestheIPv4headerandforwardstheIPv6packettothe
appropriate6to4host.

A6to4hostcancommunicatewithhostsonthe6bone.
Thistypeofcommunicationoccurswhena6to4hostforwardsIPv6trafficthatisdestinedfora6bone
hosttothelocalsite6to4router.Thelocalsite6to4routerencapsulatestheIPv6trafficwithanIPv4
headerandsendsittoa6to4relayrouterthatisconnectedtoboththeIPv4Internetandthe6bone.
The6to4relayrouterremovestheIPv4headerandforwardstheIPv6packettotheappropriate
6bonehost.

AllofthesetypesofcommunicationuseIPv6trafficwithouttherequirementofobtainingeitheradirect
connectiontothe6boneoranIPv6globaladdressprefixfromanISP.

6to4SupportinWindowsXP

Supportfor6to4hostsandroutersisprovidedbythe6to4servicethatisincludedwiththeIPv6protocol
forWindowsXP.The6to4service:

Automaticallyconfigures6to4addressesona6to4tunnelinginterfaceforallpublicIPv4addresses
thatareassignedtothecomputer.

Automaticallycreatesa2002::/16routethatforwardsall6to4trafficoverthe6to4tunneling
interface.Alltrafficforwardedbythishostto6to4destinationsisencapsulatedwithanIPv4header.

AutomaticallyperformsaDomainNameSystem(DNS)querytoobtaintheIPv4addressofa6to4
relayrouterontheInternet.

AnyhostthatisrunningtheIPv6protocolforWindowsXPandisconfiguredwithanIPv4publicaddressis
automaticallyconfiguredasa6to4host.A6to4hostcanperformitsowntunnelingandreach6to4hosts
ontheInternet,6to4hostsinothersites,orhostsonthe6bone.
Additionally,ifInternetConnectionSharing(ICS)isenabledonaninterfacethatisassignedapublicIPv4
address,the6to4service:

EnablesIPv6forwardingontheprivateinterface.

SendsRouterAdvertisementmessagesthatcontaina6to4addressprefixbasedonthepublicIPv4
addressofthepublicinterface.TheSLAIDinthe6to4addressprefixissettotheinterfaceindexof
theinterfaceonwhichadvertisementsaresent.

ByenablingICS,youcanuseacomputerrunningtheIPv6protocolforWindowsXPasa6to4router,
whichiscapableofencapsulatingandforwarding6to4traffictoother6to4hostsorsitesontheInternet.
Additionally,itisalsocapableofforwarding6bonetraffictoa6to4relayrouterontheInternet.

EachsiteusesacomputerrunningWindowsXPwithICSenabledonthepublicinterfacetocreatea6to4
router.HostcomputersrunningWindowsXPonprivatenetworksegmentsreceivetheRouter
Advertisementmessagethatissentbytheirsite's6to4routerandcontainsa6to4addressprefix.Asthe
result,two6to4hostsinseparatesitescancommunicatebyusing6to4addressesovertheInternet.
Theresultofusingthe6to4serviceisshowninthefollowingillustration.

Ifyourbrowserdoesnotsupportinlineframes,
clickhere
toviewonaseparatepage.
Byusingthe6to4service,computersrunningWindowsXPcancommunicatewith6to4hostsinothersites
acrosstheInternet(6to4hostAand6to4hostB),with6to4hostsconnectedtotheInternet(6to4hostA
and6to4hostC),andwithhostsonthe6bone.
Note
NeitherICSnorthe6to4serviceisperformingnetworkaddresstranslationontheIPv6packetsthat
arebeingforwarded.ICSisonlyprovidingnetworkaddresstranslationforIPv4packets.The6to4service
usestheICSconfigurationtodeterminethepublicIPv4addressandthepublicinterface.

ISATAP

ISATAPisanaddressassignmentandhosttohost,hosttorouter,androutertohostautomatictunneling
technologythatisusedtoprovideunicastIPv6connectivitybetweenIPv6hostsacrossanIPv4intranet.
ISATAPisdescribedintheInternetdrafttitled"IntraSiteAutomaticTunnelAddressingProtocol(ISATAP)"
(draftietfngtransisatap0
x
.txt).
ISATAPcanbeusedforcommunicationbetweenIPv6/IPv4nodesonanIPv4network.ISATAPaddresses
usethelocallyadministeredinterfaceidentifier::0:5EFE:w.x.y.zwhere:

The0:5EFEportionisformedfromthecombinationoftheOrganizationalUnitIdentifier(OUI)thatis
assignedtotheInternetAssignedNumbersAuthority(IANA)(00005E),andatypethatindicatesan
embeddedIPv4address(FE).

Thew.x.y.zportionisanyunicastIPv4address,whichincludesbothpublicandprivateaddresses.

TheISATAPinterfaceidentifiercanbecombinedwithany64bitprefix(including6to4prefixes)forIPv6
unicastaddresses.

ISATAPSupportinWindowsXP
Bydefault,theIPv6protocolforWindowsXPautomaticallyconfigurestheISATAPaddressof
FE80::5EFE:w.x.y.zontheAutomaticTunnelingPseudoInterfaceforeachIPv4addressthatisassignedto
thenode.ThisISATAPaddress,basedonthelinklocalprefixofFE80::/64,allowstwohoststo
communicateoveranIPv4networkbyusingeachother'slinklocalISATAPaddresses.
TheuseoflinklocalISATAPaddressesallowsIPv6/IPv4hostsonanIPv4intranettocommunicatewith
eachother,butnotwithotherIPv6hoststhatareoutsideofthesite.TocommunicatewithIPv6hosts
thatareoutsideofthesite,thefollowingadditionalconfigurationisrequired:

Ahostmustreceivearouteradvertisementfromarouter,typicallythesiteborderrouterthat
containsaglobaladdressprefix.

AhostmusthaveadefaultroutethatpointstoanISATAPaddressthatcorrespondstotheintranet
interfaceofthesiteborderrouter.

ThesiteborderrouteristherouterbetweentheintranetandtheInternetor6bone.Asiteborderrouteris
mostoftena6to4routerthatisconnectedtotheInternet.Afterreceivingtherouteradvertisementfrom

thesiteborderrouter,additionalISATAPaddressesthatarebasedontheglobalprefixareautomatically
configured.
Forexample,ifthesiteisconnectedtothe6boneandahost(configuredwiththeIPv4addressof
10.40.1.29)receivestheglobalprefixof3000::/64inarouteradvertisement,theISATAPaddressof
3000::5EFE:10.40.1.29isautomaticallyconfigured.Withoutaglobaladdressprefixanda6bone
connection,asitecanusea6to4basedglobaladdressprefix,connectingthroughtheIPv4Internetto
other6to4sites,6to4hosts,andthe6bone.Ifthesiteisusingthe6to4addressprefixof
2002:836B:1:5::/64(basedonthepublicaddressof131.107.0.1andanSLAIDof5),theISATAP
addressof2002:836B:1:5:0:5EFE:10.40.1.29isautomaticallyconfigured.
ThefollowingillustrationshowstwoISATAPhostscommunicatingacrosstheInternetevenwheneachsite
isusingthe192.168.0.0/16privateaddressspaceinternally.TwohostsusingthesameIPv4addressin
separatesitesmighthavethesameISATAPderivedinterfaceID,buttheystillhavegloballyuniqueIPv6
addressesbecauseoftheuniquesubnetIDthatisbasedonauniqueIPv4publicaddress.

Ifyourbrowserdoesnotsupportinlineframes,
clickhere
toviewonaseparatepage.
WhenISATAPhostAsendsanIPv6packettoISATAPhostB,thesourceaddressis
2002:9D36:1:5:0:5EFE:192.168.12.9,andthedestinationaddressis
2002:836B:1:5:0:5EFE:192.168.41.30.ForPart1ofthepacket'stripfromISATAPhostAtoISATAPhost
B,ISATAPhostAencapsulatestheIPv6packetwithanIPv4headerthatisaddressedfrom192.168.12.9
to192.168.204.1(theIPv4addressof6to4routerA'sprivateinterface).ForPart2,6to4routerA
removesthePart1IPv4headerandaddsanewIPv4headerthatisaddressedfrom157.54.0.1(6to4
routerA'spublicinterface)to131.107.0.1(6to4routerB'spublicinterface).ForPart3,6to4routerB
removesthePart2IPv4headerandaddsanewIPv4headerthatisaddressedfrom192.168.39.1(6to4
routerB'sprivateinterface)to192.168.41.30(ISATAPhostB).

Conclusion

Byusingthetransitiontechnologiesof6to4andISATAP,IPv6/IPv4nodescancommunicateacrossprivate
IPv4intranetsandtheInternetthroughIPv4encapsulatedIPv6traffic.When6to4andISATAPareused
together,6to4providesthefirst64bitsoftheaddress(thesubnetprefix)andISATAPprovidesthelast64
bitsoftheaddress(theinterfaceID).
Youcanuse6to4andISATAPtoexperimentwithIPv6,andbeginmodifyingandtestingyourapplications
tooperateoverbothIPv4andIPv6,withouthavingtowaitfortheconversionofyourintranetorthe
InternettoIPv6forwarding.

You might also like