TheNetworkWayNirYechiel'sblog
IPv6addressassignmentstateless,
stateful,DHCPohmy!
PostedonJuly2,2014
Peopledontlikechanges.IPv6couldhavehelptosolvealotoftheburdeninnetworksdeployed
today,whicharestillmostlybasedontheoriginalversionoftheInternetProtocol,akaversion4.
Buttimehascome,andeventheoldtrickslikethrowingnetworkaddresstranslation(NAT)
everywherearenotgoingtohelpanymore,[Link]
takesomemoretime,andpeoplewilldoeverythingtheycanto(continueand)delayit,butbelieve
methereisnootherwayaroundIPv6isheretoreplaceIPv4.IPv6isalsoacriticalpartofthe
promiseofthecloudandtheInternetofThings(IoT).Ifyouwanttoconnecteverythingtothe
network,youbetterplanformassivescaleandhaveenoughaddressestouse.
[Link]
someoftheconceptsremainsthesame,therearesomefundamentaldifferencesbetweenIPv4
andIPv6,anditsdefinitelytakessometimetogetusedintosomeoftheIPv6basics,includingthe
termsbeingused.ExperiencedIPv4engineerswillprobablyneedtochangetheirmindset,andas
Istatedbefore,peopledontreallylikechanges
Inthispost,IwanttohighlighttheaddressassignmentoptionsavailablewithIPv6,whichisinmy
viewoneofthemostfundamentalthingsinIPnetworking,andwherethingsareprettydifferent
comparingtoIPv4.IamgoingtoassumeyouhavesomebasicbackgroundonIPv6,andwhileI
willcoverthetheorypartIwillalsoshowthecommandlineinterfaceanddemonstratesomeofthe
configurationoptions,[Link]
topologywithtwoCiscoroutersdirectlyconnectedtoeachotherusingtheirGigabitEthernet1/0
interface.BothroutersarerunningIOS15.2(4).
Letthepartystarted
WithIPv6aninterfacecanhavemultipleprefixesandIPaddresses,andunlikeIPv4,allofthem
[Link]
[Link],onewill
automaticallybegeneratedforyou.NotethattheIPv6protocolstackwillnotbecomeoperational
onaninterfaceuntilaLinkLocaladdresswasassignedorgeneratedanditpassedDuplicate
AddressDetection(DAD)[Link],wewillfirstneedtoenableIPv6ontherouter
whichisdonegloballyusingtheipv6unicastroutingcommand.WewillthenenableIPv6onthe
interfaceusingtheipv6enablecommand:
ipv6unicastrouting
!
interfaceGigabitEthernet1/0
ipv6enable
!
NowIPv6inenabledontheinterface,andweshouldgetaLinkLocaladdressassigned
automatically:
showipv6interfaceg1/0|includelink
IPv6isenabled,linklocaladdressisFE80::C800:51FF:FE2F:1C
IPv6addressassignmentoptions
Alittlebitoftheoryaspromised.WhenitcomestoIPv6addressassignmentthereareseveral
optionsyoucanuse:
Static(manual)addressassignmentexactlylikewithIPv4,youcangoonandapplythe
[Link]
demonstratethat.
StatelessAddressAutoConfiguration(SLAAC)nodeslistenforICMPv6Router
Advertisements(RA)messagesperiodicallysentoutbyroutersonthelocallink,or
[Link]
unicastIPv6addressbycombiningitsinterfaceEUI64(basedontheMACaddresson
Ethernetinterfaces)[Link]
uniquefeatureonlytoIPv6whichprovidessimpleplug&[Link],
SLAACdoesnotprovideanythingtotheclientoutsideofanIPv6addressandadefault
gateway.SLAACisgreatlydiscussedinRFC4862.
StatelessDHCPv6withthisoptionSLAACisstillusedtogettheIPaddress,butDHCPis
usedtoobtainotherconfigurationoptions,usuallythingslikeDNS,NTP,[Link]
advantagehereisthattheDHCPserverisnotrequiredtostoreanydynamicstate
[Link]
endpointsattachedtoit,implementingstatelessDHCPv6willhighlyreducethenumberof
DHCPv6messagesthatareneededforaddressstaterefreshment.
StatefulDCHPv6functionsexactlythesameasIPv4DHCPinwhichhostsreceiveboth
theirIPv6addressandadditionalparametersfromtheDHCPserver.LikeDHCPforIPv4,
thecomponentsofaDHCPv6infrastructureconsistofDHCPv6clientsthatrequest
configuration,DHCPv6serversthatprovideconfiguration,andDHCPv6relayagentsthat
conveymessagesbetweenclientsandserverswhenclientsareonsubnetsthatdonothave
aDHCPv6server.YoucanlearnmoreaboutDHCPforIPv6inRFC3315.
NOTE:TheonlywaytogetadefaultgatewayinIPv6isviaaRAmessage.DHCPv6doesnot
carrydefaultrouteinformationatthistime.
Puttingitalltogether
AnIPv6hostperformsstatelessaddressautoconfiguration(SLAAC)bydefaultandusesa
configurationprotocolsuchasDHCPv6basedonthefollowingflagsintheRouterAdvertisement
messagesentbyaneighboringrouter:
ManagedAddressConfigurationFlag,theMflag.Whensetto1,thisflaginstructsthehost
touseaconfigurationprotocoltoobtainstatefulIPv6addresses
OtherStatefulConfigurationFlag,theOflag.Whensetto1,thisflaginstructsthehostto
useaconfigurationprotocoltoobtainotherconfigurationsettings,e.g.,DNS,NTP,etc.
CombiningthevaluesoftheMandOflagscanyieldthefollowing:
[Link]
[Link]
othermethods(suchasmanualconfiguration)toconfigureotherparameters.
BothMandOFlagsaresetto1.DHCPv6isusedforbothaddressesandother
configurationsettings,akastatefulDHCPv6.
TheMFlagissetto0andtheOFlagissetto1.DHCPv6isnotusedtoassignaddresses,
[Link]
[Link]
combinationisknownasstatlessDHCPv6.
Examiningtheconfiguration
SLAAC
Clientconfiguration:
interfaceGigabitEthernet1/0
ipv6addressautoconfig
ipv6enable
Serverconfiguration:
interfaceGigabitEthernet1/0
ipv6address2001:1111:1111::1/64
ipv6enable
WecanseetheserversendingtheRAmessagewiththeprefixthatwasconfigured:
ICMPv6ND:RequesttosendRAforFE80::C801:51FF:FE2F:1C
ICMPv6ND:SetupRAfromFE80::C801:51FF:FE2F:1CtoFF02::1onGigabitEthernet1/0
ICMPv6ND:MTU=1500
ICMPv6ND:prefix=2001:1111:1111::/64onlinkautoconfig
ICMPv6ND:2592000/604800(valid/preferred)
AndtheclientreceivingthemessageandcalculatinganaddressusingEUI64:
ICMPv6ND:ReceivedRAfromFE80::C801:51FF:FE2F:1ConGigabitEthernet1/0
ICMPv6ND:Prefix:2001:1111:1111::ICMPv6ND:Updateonlinkprefix2001:1111:1111::/6
IPV6ADDR:GeneratingIntfIDfor'eui64',prefix2001:1111:1111::/64
ICMPv6ND:IPv6AddressAutoconfig2001:1111:1111:0:C800:51FF:FE2F:1C
R1#showipv6interfacebrief
GigabitEthernet1/0[up/up]
FE80::C800:51FF:FE2F:1C
2001:1111:1111:0:C800:51FF:FE2F:1
StatelessDHCP
Clientconfiguration:
[Link]
autoconfigoption.
interfaceGigabitEthernet1/0
ipv6addressautoconfig
ipv6enable
Serverconfiguration:
ipv6
dhcppoolSTATELESS_DHCP
dnsserver2001:1111:1111::10
[Link]
!
interfaceGigabitEthernet1/0
ipv6address2001:1111:11111::1/64
ipv6enable
ipv6ndotherconfigflag
ipv6dhcpserverSTATELESS_DHCP
WecanseetheclientkeepingthesameIPaddress,butnowobtainingDNSsettingsthrough
DHCP:
IPv6DHCP:AddingserverFE80::C801:51FF:FE2F:1C
IPv6DHCP:Processingoptions
IPv6DHCP:ConfiguringDNSserver2001:1111:1111::10
IPv6DHCP:[Link]
SH AR ETH IS :
Twitter
Facebook 4
Google
Like
Bethefirsttolikethis.
RE LATED
IPv6PrefixDelegation
whatisitandhowdoesit
goingtohelpOpenStack?
In"Blog"
Neutronnetworkingwith
RedHatEnterpriseLinux
OpenStackPlatform
In"Blog"
Reflectionsonthe
networkingindustry,part1:
Welcometovendorland
In"Blog"
ThisentrywaspostedinBlog,Foundations,HandsOnandtaggedIPv6byNirYechiel,Senior
[Link]
[[Link]
statefuldhcpohmy/].
8THOUGHTSONIPV6ADDRESSASSIGNMENTSTATELESS,STATEFUL,DHCPOHMY!
Gerardo
onFebruary21,2015at2:51pmsaid:
[Link]!!!
RudiShrikeBartsch
onJune21,2015at1:36pmsaid:
Sowellexplained,thanks!
Pingback:IPv6PrefixDelegationwhatisitandhowdoesitgoingtohelp
OpenStack?|TheNetworkWayNirYechiel'sblog
Garegin
onSeptember13,2015at7:04pmsaid:
v6isnear,[Link]
[Link],theeasiestsegmentto
[Link]
educationorfirewallreconfig.AndyetmostmobileintheUSisstillv4.
Itdoesntseemlikethereisanypressurefromaddressexhausion.
nyechiel
onSeptember17,2015at11:40amsaid:
HelloGareginandthanksforyourfeedback.
Itsaprocess,andIhonestlyfeelsorryforanycompanywhichdid
[Link]
webscaledeploymentsIhavebeenengagedwitharealready
usingIPv6,andIPv6supportisastrictrequirementforthem.
Nir
Pingback:Settingupadhcpserverforipv6|Turnonthelights
vishalranpariya
onSeptember16,2016at3:36amsaid:
InMyUTM,ForIPv6InterfaceIPAssignmentselectedDHCPfrommy
endandafterthatIamgettingmode1)Auto2)Manual
SoinManualmodeagaingetting2option1)DHCPonly&2)Stateless
SoIselectedDHCPonlybutitisaskingforgatewayaddressinDHCP
onlymode.
SoIamconfusewithgatewayaddresswhyisitrequiredgatewayin
DHCPonlyoption?
Cananyonereplyearliest?
NirYechiel,SeniorTechnicalProductManageratRedHat
onSeptember19,2016at6:50pmsaid:
Hello,
[Link]
youtryingtodoandwhatisthetopology?Rememberthateven
statefulDHCPstillreliesonRAsforgatewayinformation,soit
couldbethatyouneedtosetitmanuallyifthedeviceisnot
capableoflearningitdynamically.
/Nir