2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-30 05:27:55 +00:00

[#1329] Added pool setting subnet

This commit is contained in:
Francis Dupont 2020-08-01 13:24:06 +02:00
parent 2090d0613a
commit 33888bed9e
3 changed files with 61 additions and 28 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

After

Width:  |  Height:  |  Size: 118 KiB

View File

@ -1,19 +1,22 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="1516px" preserveAspectRatio="none" style="width:969px;height:1516px;" version="1.1" viewBox="0 0 969 1516" width="969px" zoomAndPan="magnify"><defs><filter height="300%" id="f8c46mlwpeali" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="288" x="331.75" y="17.4023">currentHost DHCPv4 (Kea 1.7.11)</text><!--MD5=[e3476fda087b0512b1cf4e3a66ca5e59]
entity entry--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="134" x="314.5" y="28.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="324.5" y="51.7344">Subnet Selection</text><!--MD5=[f65ad2d20ed779f8ee7fa3e9ca8ab4c3]
entity setSelected--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="247" x="258" y="125.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="227" x="268" y="148.7344">Set subnet to the selected subnet</text><!--MD5=[c0678c1aaf89874ea821e39d7ef5404f]
entity clientid_lookup--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="245" x="259" y="222.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="225" x="269" y="245.7344">Has client a lease for its client id?</text><!--MD5=[a51c27fcfb0c2b9388b266a7e30efdf3]
entity clientid_iterate--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="283" x="7" y="319.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="263" x="17" y="342.7344">Iterate on allowed subnets for client id</text><!--MD5=[96d14c76c72fae1f84c71c464af0f0e6]
entity found_clientid--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="253" x="22" y="498.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="233" x="32" y="521.7344">Set subnet to the by client id lease</text><!--MD5=[9f5518b92d1482f0724c659635bb4f8f]
entity hwaddr_lookup--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="211" x="449" y="432.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="191" x="459" y="455.7344">Has client a matching lease?</text><!--MD5=[7366630e5488cbc20c26d829a87e86ca]
entity hwaddr_iterate--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="352" x="201.5" y="564.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="332" x="211.5" y="587.7344">Iterate on allowed subnets for hardware address</text><!--MD5=[096d593c9a7e1a0b5ae2681804d4217f]
entity found_hwaddr--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="243" x="229" y="677.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="223" x="239" y="700.7344">Set subnet to the matching lease</text><!--MD5=[f1bd864ca92b3a59ad91e15b6c278a16]
entity hasAddressReservation--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="211" x="375" y="930.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="191" x="385" y="953.7344">Has an address reservation?</text><!--MD5=[0af8b8cc29117b7db26a4bf8fde82b62]
entity setAddressReservation--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="300" x="220.5" y="1043.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="280" x="230.5" y="1066.7344">Set subnet to address reservation subnet</text><!--MD5=[a2ab21a8d09e419da8ba4e22e422b87f]
entity getHRmode--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="252" x="354.5" y="1140.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="232" x="364.5" y="1163.7344">Get subnet host reservation mode</text><!--MD5=[9e66760393f24350dd53d10577644815]
entity checkHRmode--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="293" x="334" y="1237.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="273" x="344" y="1260.7344">Is subnet host reservation mode global?</text><!--MD5=[9225881c05e5dcc29801826dc3c4a44b]
entity global--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="205" x="258" y="1350.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="185" x="268" y="1373.7344">Get global host reservation</text><!--MD5=[fb2193611fca68211907294b61bd1772]
entity bySubnet--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="209" x="498" y="1350.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="189" x="508" y="1373.7344">Get subnet host reservation</text><!--MD5=[c13398c59c328d6fcc544c8c17f5b117]
entity return--><rect fill="#FEFECE" filter="url(#f8c46mlwpeali)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="235" x="363" y="1463.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="215" x="373" y="1486.7344">Return current host reservation</text><!--MD5=[4190d3dcd511d21b11bd238065bcb30b]
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="1823px" preserveAspectRatio="none" style="width:969px;height:1823px;" version="1.1" viewBox="0 0 969 1823" width="969px" zoomAndPan="magnify"><defs><filter height="300%" id="f162kmmt1mna5z" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="18" lengthAdjust="spacingAndGlyphs" textLength="288" x="331.75" y="17.4023">currentHost DHCPv4 (Kea 1.7.11)</text><!--MD5=[e3476fda087b0512b1cf4e3a66ca5e59]
entity entry--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="134" x="314.5" y="28.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="114" x="324.5" y="51.7344">Subnet Selection</text><!--MD5=[f65ad2d20ed779f8ee7fa3e9ca8ab4c3]
entity setSelected--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="247" x="258" y="125.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="227" x="268" y="148.7344">Set subnet to the selected subnet</text><!--MD5=[c0678c1aaf89874ea821e39d7ef5404f]
entity clientid_lookup--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="245" x="259" y="222.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="225" x="269" y="245.7344">Has client a lease for its client id?</text><!--MD5=[a51c27fcfb0c2b9388b266a7e30efdf3]
entity clientid_iterate--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="283" x="7" y="319.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="263" x="17" y="342.7344">Iterate on allowed subnets for client id</text><!--MD5=[96d14c76c72fae1f84c71c464af0f0e6]
entity found_clientid--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="253" x="22" y="498.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="233" x="32" y="521.7344">Set subnet to the by client id lease</text><!--MD5=[9f5518b92d1482f0724c659635bb4f8f]
entity hwaddr_lookup--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="211" x="449" y="432.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="191" x="459" y="455.7344">Has client a matching lease?</text><!--MD5=[7366630e5488cbc20c26d829a87e86ca]
entity hwaddr_iterate--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="352" x="201.5" y="564.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="332" x="211.5" y="587.7344">Iterate on allowed subnets for hardware address</text><!--MD5=[096d593c9a7e1a0b5ae2681804d4217f]
entity found_hwaddr--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="243" x="229" y="677.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="223" x="239" y="700.7344">Set subnet to the matching lease</text><!--MD5=[f1bd864ca92b3a59ad91e15b6c278a16]
entity hasAddressReservation--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="211" x="375" y="930.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="191" x="385" y="953.7344">Has an address reservation?</text><!--MD5=[0af8b8cc29117b7db26a4bf8fde82b62]
entity setAddressReservation--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="300" x="220.5" y="1043.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="280" x="230.5" y="1066.7344">Set subnet to address reservation subnet</text><!--MD5=[42a0a2711e18aa980e3ea9f910af1c90]
entity pool--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="251" x="355" y="1140.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="231" x="365" y="1163.7344">Is the address in an allowed pool?</text><!--MD5=[ec337e6f6831b541235537d1c5125816]
entity pool_iterate--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="269" x="141" y="1237.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="249" x="151" y="1260.7344">Iterate on allowed subnets with pool</text><!--MD5=[8426a0f58e3c900bd89aafdc516c0a64]
entity inAllowedPool--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="254" x="148.5" y="1350.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="234" x="158.5" y="1373.7344">Set subnet to address pool subnet</text><!--MD5=[a2ab21a8d09e419da8ba4e22e422b87f]
entity getHRmode--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="252" x="346.5" y="1447.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="232" x="356.5" y="1470.7344">Get subnet host reservation mode</text><!--MD5=[9e66760393f24350dd53d10577644815]
entity checkHRmode--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="293" x="326" y="1544.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="273" x="336" y="1567.7344">Is subnet host reservation mode global?</text><!--MD5=[9225881c05e5dcc29801826dc3c4a44b]
entity global--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="205" x="250" y="1657.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="185" x="260" y="1680.7344">Get global host reservation</text><!--MD5=[fb2193611fca68211907294b61bd1772]
entity bySubnet--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="209" x="490" y="1657.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="189" x="500" y="1680.7344">Get subnet host reservation</text><!--MD5=[c13398c59c328d6fcc544c8c17f5b117]
entity return--><rect fill="#FEFECE" filter="url(#f162kmmt1mna5z)" height="36.4883" style="stroke: #A80036; stroke-width: 1.5;" width="235" x="355" y="1770.1992"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="215" x="365" y="1793.7344">Return current host reservation</text><!--MD5=[4190d3dcd511d21b11bd238065bcb30b]
link entry to setSelected--><path d="M381.5,64.6192 C381.5,80.1592 381.5,102.9792 381.5,119.8592 " fill="none" id="entry-&gt;setSelected" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="381.5,124.8892,385.5,115.8892,381.5,119.8892,377.5,115.8892,381.5,124.8892" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[e08d915304835ed62ca4e0728c34eef1]
link setSelected to clientid_lookup--><path d="M381.5,161.6192 C381.5,177.1592 381.5,199.9792 381.5,216.8592 " fill="none" id="setSelected-&gt;clientid_lookup" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="381.5,221.8892,385.5,212.8892,381.5,216.8892,377.5,212.8892,381.5,221.8892" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[6be1f2e9e03fb1c5265b47f0fe05d4fb]
link clientid_lookup to hwaddr_lookup--><path d="M450.66,258.2792 C487.31,270.2592 530.95,289.5492 561.5,319.1992 C589.76,346.6192 605.63,365.0792 592.5,402.1992 C589.19,411.5492 583.15,420.3992 576.84,427.8492 " fill="none" id="clientid_lookup-&gt;hwaddr_lookup" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="573.32,431.8292,582.2724,427.7238,576.6267,428.0788,576.2717,422.4331,573.32,431.8292" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="116" x="591.5" y="342.2676">no client id option</text><!--MD5=[e88e8ce2e61ddfe0f17d6f35f9f4b567]
@ -28,14 +31,20 @@ link hwaddr_iterate to hwaddr_iterate--><path d="M553.73,573.1792 C574.76,574.81
link hwaddr_iterate to found_hwaddr--><path d="M373.28,600.5392 C368.61,619.7692 361.05,650.8292 355.93,671.8592 " fill="none" id="hwaddr_iterate-&gt;found_hwaddr" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="354.69,676.9792,360.6886,669.1679,355.8623,672.1186,352.9116,667.2923,354.69,676.9792" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="84" x="367.5" y="643.7676">found a lease</text><!--MD5=[49806d919f2e8f347acf33d16af6c958]
link found_hwaddr to hasAddressReservation--><path d="M359.44,713.4492 C382.5,757.9792 443.99,876.6992 469.34,925.6492 " fill="none" id="found_hwaddr-&gt;hasAddressReservation" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="471.67,930.1592,471.0846,920.3278,469.3713,925.7189,463.9802,924.0056,471.67,930.1592" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[419c32f3c11394d82c4ebd3db00104c7]
link hwaddr_iterate to hasAddressReservation--><path d="M433.87,600.2492 C475.7,616.7892 525.5,646.4992 525.5,694.1992 C525.5,694.1992 525.5,694.1992 525.5,869.1992 C525.5,890.4892 512.76,911.2092 500.84,925.9292 " fill="none" id="hwaddr_iterate-&gt;hasAddressReservation" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="497.51,929.9192,506.343,925.5627,500.7095,926.0769,500.1953,920.4435,497.51,929.9192" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="62" x="526.5" y="803.7676">not found</text><!--MD5=[1a9e971bc87c9d378000ad9b2e367c91]
link hasAddressReservation to setAddressReservation--><path d="M463.31,966.5392 C443.86,986.1792 412.17,1018.1492 391.33,1039.1792 " fill="none" id="hasAddressReservation-&gt;setAddressReservation" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="387.57,1042.9792,396.7481,1039.4066,391.0912,1039.4295,391.0684,1033.7726,387.57,1042.9792" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="21" x="432.5" y="1009.7676">yes</text><!--MD5=[7a0b79a2d77284ba08ebcdbbf3b31aeb]
link hasAddressReservation to getHRmode--><path d="M497.22,966.4192 C518.88,990.8992 552.33,1037.4392 538.5,1079.1992 C531.33,1100.8692 515.54,1121.4192 502.24,1135.9792 " fill="none" id="hasAddressReservation-&gt;getHRmode" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="498.57,1139.9292,507.6356,1136.0803,501.9821,1136.2744,501.7879,1130.6209,498.57,1139.9292" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="16" x="542.5" y="1066.2676">no</text><!--MD5=[43715e9794885370efc4ea00c7a93574]
link setAddressReservation to getHRmode--><path d="M390.42,1079.3992 C409.11,1095.5392 437.07,1119.6992 456.88,1136.7992 " fill="none" id="setAddressReservation-&gt;getHRmode" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="460.73,1140.1192,456.5357,1131.2081,456.9468,1136.85,451.305,1137.2612,460.73,1140.1192" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[9e14dd0054774aedb71cf602d40d12b7]
link getHRmode to checkHRmode--><path d="M480.5,1176.6192 C480.5,1192.1592 480.5,1214.9792 480.5,1231.8592 " fill="none" id="getHRmode-&gt;checkHRmode" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="480.5,1236.8892,484.5,1227.8892,480.5,1231.8892,476.5,1227.8892,480.5,1236.8892" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[a84b25cfb30efcca4b707749deb6e97a]
link checkHRmode to global--><path d="M462.01,1273.2992 C440.76,1292.9592 405.87,1325.2292 383.04,1346.3492 " fill="none" id="checkHRmode-&gt;global" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="379.21,1349.8992,388.5379,1346.7384,382.8857,1346.5096,383.1145,1340.8574,379.21,1349.8992" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="21" x="428.5" y="1316.7676">yes</text><!--MD5=[a6bc61640de244f08df3cca17a4f2365]
link checkHRmode to bySubnet--><path d="M499.3,1273.2992 C520.9,1292.9592 556.37,1325.2292 579.58,1346.3492 " fill="none" id="checkHRmode-&gt;bySubnet" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="583.48,1349.8992,579.5026,1340.8892,579.7771,1346.5394,574.1269,1346.8139,583.48,1349.8992" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="16" x="549.5" y="1316.7676">no</text><!--MD5=[b516e9f33f07fd0923019528919312cb]
link global to return--><path d="M357.59,1386.3892 C356.2,1400.3392 356.61,1419.8292 366.5,1433.1992 C375.42,1445.2592 388,1454.2392 401.56,1460.9292 " fill="none" id="global-&gt;return" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="406.2,1463.1092,399.7564,1455.6607,401.6749,1460.9823,396.3533,1462.9008,406.2,1463.1092" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="187" x="367.5" y="1429.7676">return global host reservation</text><!--MD5=[31ce4acb5044d12c75fb908f2994650f]
link bySubnet to return--><path d="M593.84,1386.2092 C586.18,1400.0592 573.99,1419.4892 559.5,1433.1992 C548.25,1443.8392 534.18,1453.1692 521.05,1460.6492 " fill="none" id="bySubnet-&gt;return" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="516.63,1463.1192,526.4378,1462.2206,520.9947,1460.6801,522.5352,1455.2371,516.63,1463.1192" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="191" x="574.5" y="1429.7676">return subnet host reservation</text><!--MD5=[928db00539b884c4c4e53734a6832c6a]
link hasAddressReservation to setAddressReservation--><path d="M463.31,966.5392 C443.86,986.1792 412.17,1018.1492 391.33,1039.1792 " fill="none" id="hasAddressReservation-&gt;setAddressReservation" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="387.57,1042.9792,396.7481,1039.4066,391.0912,1039.4295,391.0684,1033.7726,387.57,1042.9792" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="21" x="432.5" y="1009.7676">yes</text><!--MD5=[d42a4bd24fb375c431deb7abe8a74e17]
link hasAddressReservation to pool--><path d="M497.22,966.4192 C518.88,990.8992 552.33,1037.4392 538.5,1079.1992 C531.33,1100.8692 515.54,1121.4192 502.24,1135.9792 " fill="none" id="hasAddressReservation-&gt;pool" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="498.57,1139.9292,507.6356,1136.0803,501.9821,1136.2744,501.7879,1130.6209,498.57,1139.9292" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="16" x="542.5" y="1066.2676">no</text><!--MD5=[791581dff43cc3b6477c496805383c47]
link setAddressReservation to pool--><path d="M390.42,1079.3992 C409.11,1095.5392 437.07,1119.6992 456.88,1136.7992 " fill="none" id="setAddressReservation-&gt;pool" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="460.73,1140.1192,456.5357,1131.2081,456.9468,1136.85,451.305,1137.2612,460.73,1140.1192" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[7a1241998e61cc09e6a084344a13ee40]
link pool to pool_iterate--><path d="M443.38,1176.3992 C407.82,1192.8792 354.25,1217.7092 317.23,1234.8592 " fill="none" id="pool-&gt;pool_iterate" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="312.35,1237.1192,322.1978,1236.9736,316.8885,1235.0212,318.841,1229.712,312.35,1237.1192" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[599eb954f991ec4c35dac5f50073ed5c]
link pool to getHRmode--><path d="M562.27,1176.2592 C595.56,1187.6592 630.78,1206.4492 650.5,1237.1992 C659.14,1250.6692 654.47,1257.6992 650.5,1273.1992 C636.28,1328.6892 627.14,1343.9092 588.5,1386.1992 C566.39,1410.3992 535.31,1430.7792 510.89,1444.6292 " fill="none" id="pool-&gt;getHRmode" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="506.41,1447.1392,516.2178,1446.2406,510.7747,1444.7001,512.3152,1439.2571,506.41,1447.1392" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="205" x="642.5" y="1316.7676">pool check is not in all branches</text><!--MD5=[f92712dd8e32c9acdf8619de922fc5cb]
link pool_iterate to pool_iterate--><path d="M410.12,1246.9692 C430.88,1248.2192 445,1250.9592 445,1255.1992 C445,1259.0792 433.2,1261.6992 415.32,1263.0692 " fill="none" id="pool_iterate-&gt;pool_iterate" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="410.12,1263.4292,419.3732,1266.8023,415.1082,1263.0862,418.8244,1258.8212,410.12,1263.4292" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="193" x="451" y="1260.2676">address not in an allowed pool</text><!--MD5=[89f40702130c31205e20b7afecbe9ed1]
link pool_iterate to inAllowedPool--><path d="M275.5,1273.5392 C275.5,1292.7692 275.5,1323.8292 275.5,1344.8592 " fill="none" id="pool_iterate-&gt;inAllowedPool" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="275.5,1349.9792,279.5,1340.9792,275.5,1344.9792,271.5,1340.9792,275.5,1349.9792" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="168" x="276.5" y="1316.7676">address in an allowed pool</text><!--MD5=[2404f6c7b2ff699f3cb852b0289ecfae]
link pool_iterate to getHRmode--><path d="M375.89,1273.2492 C408.78,1280.8692 439.69,1290.9192 450.5,1303.1992 C484.66,1341.9792 481.2,1407.7092 476.46,1441.9492 " fill="none" id="pool_iterate-&gt;getHRmode" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="475.7,1447.1692,480.9697,1438.8487,476.4291,1442.2227,473.0552,1437.6821,475.7,1447.1692" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="100" x="479.5" y="1373.2676">no allowed pool</text><!--MD5=[7343ba745f039e5847ae3e5f0fd83d75]
link inAllowedPool to getHRmode--><path d="M311.18,1386.3992 C345.34,1402.8792 396.82,1427.7092 432.4,1444.8592 " fill="none" id="inAllowedPool-&gt;getHRmode" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="437.09,1447.1192,430.7227,1439.6054,432.5869,1444.9463,427.246,1446.8104,437.09,1447.1192" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[9e14dd0054774aedb71cf602d40d12b7]
link getHRmode to checkHRmode--><path d="M472.5,1483.6192 C472.5,1499.1592 472.5,1521.9792 472.5,1538.8592 " fill="none" id="getHRmode-&gt;checkHRmode" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="472.5,1543.8892,476.5,1534.8892,472.5,1538.8892,468.5,1534.8892,472.5,1543.8892" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[a84b25cfb30efcca4b707749deb6e97a]
link checkHRmode to global--><path d="M454.01,1580.2992 C432.76,1599.9592 397.87,1632.2292 375.04,1653.3492 " fill="none" id="checkHRmode-&gt;global" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="371.21,1656.8992,380.5379,1653.7384,374.8857,1653.5096,375.1145,1647.8574,371.21,1656.8992" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="21" x="421.5" y="1623.7676">yes</text><!--MD5=[a6bc61640de244f08df3cca17a4f2365]
link checkHRmode to bySubnet--><path d="M491.3,1580.2992 C512.9,1599.9592 548.37,1632.2292 571.58,1653.3492 " fill="none" id="checkHRmode-&gt;bySubnet" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="575.48,1656.8992,571.5026,1647.8892,571.7771,1653.5394,566.1269,1653.8139,575.48,1656.8992" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="16" x="541.5" y="1623.7676">no</text><!--MD5=[b516e9f33f07fd0923019528919312cb]
link global to return--><path d="M349.59,1693.3892 C348.2,1707.3392 348.61,1726.8292 358.5,1740.1992 C367.42,1752.2592 380,1761.2392 393.56,1767.9292 " fill="none" id="global-&gt;return" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="398.2,1770.1092,391.7564,1762.6607,393.6749,1767.9823,388.3533,1769.9008,398.2,1770.1092" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="187" x="359.5" y="1736.7676">return global host reservation</text><!--MD5=[31ce4acb5044d12c75fb908f2994650f]
link bySubnet to return--><path d="M585.84,1693.2092 C578.18,1707.0592 565.99,1726.4892 551.5,1740.1992 C540.25,1750.8392 526.18,1760.1692 513.05,1767.6492 " fill="none" id="bySubnet-&gt;return" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="#A80036" points="508.63,1770.1192,518.4378,1769.2206,512.9947,1767.6801,514.5352,1762.2371,508.63,1770.1192" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="191" x="566.5" y="1736.7676">return subnet host reservation</text><!--MD5=[a6820fb97738092a09d9f170f6e00dae]
@startuml
title currentHost DHCPv4 (Kea 1.7.11)
@ -60,6 +69,12 @@ agent "Has an address reservation?" as hasAddressReservation
agent "Set subnet to address reservation subnet" as setAddressReservation
agent "Is the address in an allowed pool?" as pool
agent "Iterate on allowed subnets with pool" as pool_iterate
agent "Set subnet to address pool subnet" as inAllowedPool
agent "Get subnet host reservation mode" as getHRmode
agent "Is subnet host reservation mode global?" as checkHRmode
@ -85,8 +100,14 @@ hwaddr_iterate - -> found_hwaddr : found a lease
found_hwaddr - - - -> hasAddressReservation
hwaddr_iterate - -> hasAddressReservation : not found
hasAddressReservation - -> setAddressReservation : yes
hasAddressReservation - -> getHRmode : no
setAddressReservation - -> getHRmode
hasAddressReservation - -> pool : no
setAddressReservation - -> pool
pool - -> pool_iterate
pool - - -> getHRmode : pool check is not in all branches
pool_iterate -> pool_iterate : address not in an allowed pool
pool_iterate - -> inAllowedPool : address in an allowed pool
pool_iterate - - -> getHRmode : no allowed pool
inAllowedPool - -> getHRmode
getHRmode - -> checkHRmode
checkHRmode - -> global : yes
checkHRmode - -> bySubnet : no

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 25 KiB

View File

@ -22,6 +22,12 @@ agent "Has an address reservation?" as hasAddressReservation
agent "Set subnet to address reservation subnet" as setAddressReservation
agent "Is the address in an allowed pool?" as pool
agent "Iterate on allowed subnets with pool" as pool_iterate
agent "Set subnet to address pool subnet" as inAllowedPool
agent "Get subnet host reservation mode" as getHRmode
agent "Is subnet host reservation mode global?" as checkHRmode
@ -47,8 +53,14 @@ hwaddr_iterate --> found_hwaddr : found a lease
found_hwaddr ----> hasAddressReservation
hwaddr_iterate --> hasAddressReservation : not found
hasAddressReservation --> setAddressReservation : yes
hasAddressReservation --> getHRmode : no
setAddressReservation --> getHRmode
hasAddressReservation --> pool : no
setAddressReservation --> pool
pool --> pool_iterate
pool ---> getHRmode : pool check is not in all branches
pool_iterate -> pool_iterate : address not in an allowed pool
pool_iterate --> inAllowedPool : address in an allowed pool
pool_iterate ---> getHRmode : no allowed pool
inAllowedPool --> getHRmode
getHRmode --> checkHRmode
checkHRmode --> global : yes
checkHRmode --> bySubnet : no