Add initial power management files and system diagram
- Created a new directory for power management with a .gitkeep file. - Added a system diagram in SVG format for power management architecture.
This commit is contained in:
520
feature/network/NW-diagram.drawio.svg
Normal file
520
feature/network/NW-diagram.drawio.svg
Normal file
@@ -0,0 +1,520 @@
|
||||
<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" style="background: transparent; background-color: transparent; color-scheme: light dark;" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="561px" height="733px" viewBox="-0.5 -0.5 561 733" content="<mxfile><diagram id="2J_i9eyuWScV5GPMZ8z7" name="ページ1">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</diagram></mxfile>">
|
||||
<defs/>
|
||||
<g>
|
||||
<g>
|
||||
<path d="M 270 51 L 270 101 Q 270 111 280 111 L 300 111 Q 310 111 310 121 L 310 164.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 310 169.88 L 306.5 162.88 L 310 164.63 L 313.5 162.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 84px; margin-left: 272px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 11px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: nowrap; ">
|
||||
Flets (10GbE)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="272" y="87" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="11px" text-anchor="middle">
|
||||
Flets (10GbE)
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 307.17 51 C 314.66 50.15 320.01 43.69 319.11 36.57 C 318.21 29.45 311.4 24.38 303.91 25.23 C 303.83 14.6 295.98 5.46 285.03 3.23 C 274.08 1 262.97 6.29 258.31 15.96 C 254.85 12.2 249.36 10.79 244.38 12.36 C 239.4 13.94 235.9 18.2 235.5 23.17 C 227.41 22.89 220.6 28.89 220.3 36.57 C 220 44.25 226.32 50.72 234.42 51 Z" fill="#cccccc" stroke="#6881b3" stroke-width="2.06" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(204, 204, 204), rgb(62, 62, 62)); stroke: light-dark(rgb(104, 129, 179), rgb(107, 129, 172));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 26px; margin-left: 270px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: nowrap; ">
|
||||
The Internet
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="270" y="30" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
The Internet
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 340 211 L 340 244.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 340 249.88 L 336.5 242.88 L 340 244.63 L 343.5 242.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="280" y="171" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 191px; margin-left: 281px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
rt-edge-01
|
||||
<br/>
|
||||
(RTX 1300)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="340" y="195" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
rt-edge-01...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 260 411 L 260 431 Q 260 441 270 441 L 400 441 Q 410 441 410 451 L 410 471 Q 410 481 420 481 L 433.63 481" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 438.88 481 L 431.88 484.5 L 433.63 481 L 431.88 477.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 260 411 L 260 431 Q 260 441 270 441 L 400 441 Q 410 441 410 451 L 410 531 Q 410 541 420 541 L 433.63 541" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 438.88 541 L 431.88 544.5 L 433.63 541 L 431.88 537.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 260 411 L 260 431 Q 260 441 270 441 L 400 441 Q 410 441 410 451 L 410 611 Q 410 621 420 621 L 433.63 621" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 438.88 621 L 431.88 624.5 L 433.63 621 L 431.88 617.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 260 411 L 260 431 Q 260 441 270 441 L 400 441 Q 410 441 410 451 L 410 671 Q 410 681 420 681 L 433.63 681" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 438.88 681 L 431.88 684.5 L 433.63 681 L 431.88 677.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 230 411 L 230 421 Q 230 431 230 441 L 230 504.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 230 509.88 L 226.5 502.88 L 230 504.63 L 233.5 502.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 260 411 L 260 431 Q 260 441 270 441 L 400 441 Q 410 441 410 451 L 410 581 Q 410 591 400 591 L 300 591 Q 290 591 290 601 L 290 624.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 290 629.88 L 286.5 622.88 L 290 624.63 L 293.5 622.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="200" y="371" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 391px; margin-left: 201px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
sw-srv-01
|
||||
<br/>
|
||||
(AT-x510-28GTX)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="260" y="395" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
sw-srv-01...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 420 411 L 420 451 Q 420 461 426.82 461 L 433.63 461" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 438.88 461 L 431.88 464.5 L 433.63 461 L 431.88 457.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 420 411 L 420 511 Q 420 521 426.82 521 L 433.63 521" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 438.88 521 L 431.88 524.5 L 433.63 521 L 431.88 517.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 420 411 L 420 591 Q 420 601 426.82 601 L 433.63 601" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 438.88 601 L 431.88 604.5 L 433.63 601 L 431.88 597.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 420 411 L 420 651 Q 420 661 426.82 661 L 433.63 661" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 438.88 661 L 431.88 664.5 L 433.63 661 L 431.88 657.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 390 411 L 390 441 Q 390 451 380 451 L 250 451 Q 240 451 240 461 L 240 504.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 240 509.88 L 236.5 502.88 L 240 504.63 L 243.5 502.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 420 411 L 420 591 Q 420 601 410 601 L 310 601 Q 300 601 300 611 L 300 624.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 300 629.88 L 296.5 622.88 L 300 624.63 L 303.5 622.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="360" y="371" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 391px; margin-left: 361px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
<span style="">
|
||||
sw-srv-02
|
||||
</span>
|
||||
<div>
|
||||
<span style="">
|
||||
(AT-x510-28GTX)
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="420" y="395" fill="light-dark(#000000, #ffffff)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
sw-srv-02...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 326.37 391 L 353.63 391" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 321.12 391 L 328.12 387.5 L 326.37 391 L 328.12 394.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 358.88 391 L 351.88 394.5 L 353.63 391 L 351.88 387.5 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 410 51 L 410 101 Q 410 111 400 111 L 380 111 Q 370 111 370 121 L 370 164.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 370 169.88 L 366.5 162.88 L 370 164.63 L 373.5 162.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 84px; margin-left: 411px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 11px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: nowrap; ">
|
||||
LTE/5G (1GbE)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="411" y="87" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="11px" text-anchor="middle">
|
||||
LTE/5G (1GbE)
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 447.17 51 C 454.66 50.15 460.01 43.69 459.11 36.57 C 458.21 29.45 451.4 24.38 443.91 25.23 C 443.83 14.6 435.98 5.46 425.03 3.23 C 414.08 1 402.97 6.29 398.31 15.96 C 394.85 12.2 389.36 10.79 384.38 12.36 C 379.4 13.94 375.9 18.2 375.5 23.17 C 367.41 22.89 360.6 28.89 360.3 36.57 C 360 44.25 366.32 50.72 374.42 51 Z" fill="#cccccc" stroke="#6881b3" stroke-width="2.06" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(204, 204, 204), rgb(62, 62, 62)); stroke: light-dark(rgb(104, 129, 179), rgb(107, 129, 172));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 26px; margin-left: 410px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: nowrap; ">
|
||||
The Internet
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="410" y="30" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
The Internet
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="440" y="451" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 471px; margin-left: 441px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
sc-rpi4-01
|
||||
<br/>
|
||||
(RPi4)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="500" y="475" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
sc-rpi4-01...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="440" y="591" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 611px; margin-left: 441px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
x86-01-pve
|
||||
<br/>
|
||||
(GEM 10)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="500" y="615" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
x86-01-pve...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="440" y="511" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 531px; margin-left: 441px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
n1-pro-pve
|
||||
<br/>
|
||||
(N1-Pro)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="500" y="535" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
n1-pro-pve...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="440" y="651" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 671px; margin-left: 441px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
x86-02-pve
|
||||
<br/>
|
||||
(GEM 10)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="500" y="675" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
x86-02-pve...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 260 551 L 260 581 Q 260 591 260 601 L 260 624.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 260 629.88 L 256.5 622.88 L 260 624.63 L 263.5 622.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="200" y="511" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 531px; margin-left: 201px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
<div style="">
|
||||
<span style="background-color: transparent; font-variant-ligatures: no-common-ligatures;">
|
||||
<font face="UI Sans, Lato, HelveticaNeue, Helvetica Neue, Helvetica, Arial, sans-serif">
|
||||
sw-aggr-srv-01
|
||||
<br/>
|
||||
(USW Aggregation)
|
||||
</font>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="260" y="535" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
sw-aggr-srv-01...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="200" y="631" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 651px; margin-left: 201px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
stg-nas-01
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="260" y="655" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
stg-nas-01
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="0" y="451" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 471px; margin-left: 1px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
AP
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="60" y="475" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
AP
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 60 411 L 60 444.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 60 449.88 L 56.5 442.88 L 60 444.63 L 63.5 442.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="0" y="371" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 391px; margin-left: 1px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
<div style="">
|
||||
<font face="UI Sans, Lato, HelveticaNeue, Helvetica Neue, Helvetica, Arial, sans-serif">
|
||||
<span style="font-variant-ligatures: no-common-ligatures;">
|
||||
sw-flex
|
||||
<br/>
|
||||
(USW Flex)
|
||||
</span>
|
||||
</font>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="60" y="395" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
sw-flex...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 160 731 L 160 51" fill="none" stroke="#000000" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="40" y="131" width="120" height="40" fill="none" stroke="none" pointer-events="all"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 151px; margin-left: 41px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
VLAN 100
|
||||
<br/>
|
||||
192.168.100.0/24
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="100" y="155" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
VLAN 100...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="160" y="131" width="120" height="40" fill="none" stroke="none" pointer-events="all"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 151px; margin-left: 161px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
VLAN 10~90
|
||||
<br/>
|
||||
10.0.0.0/16
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="220" y="155" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
VLAN 10~90...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 340 291 L 340 321 Q 340 331 330 331 L 270 331 Q 260 331 260 341 L 260 364.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 260 369.88 L 256.5 362.88 L 260 364.63 L 263.5 362.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 340 291 L 340 321 Q 340 331 350 331 L 410 331 Q 420 331 420 341 L 420 364.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 420 369.88 L 416.5 362.88 L 420 364.63 L 423.5 362.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M 340 291 L 340 321 Q 340 331 330 331 L 70 331 Q 60 331 60 341 L 60 364.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="stroke" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
<path d="M 60 369.88 L 56.5 362.88 L 60 364.63 L 63.5 362.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<rect x="280" y="251" width="120" height="40" fill="#ffffff" stroke="#000000" pointer-events="all" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));"/>
|
||||
</g>
|
||||
<g>
|
||||
<g transform="translate(-0.5 -0.5)">
|
||||
<switch>
|
||||
<foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 271px; margin-left: 281px;">
|
||||
<div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; ">
|
||||
<div style="display: inline-block; font-size: 12px; font-family: "Helvetica"; color: light-dark(#000000, #FFFFFF); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">
|
||||
<div style="">
|
||||
<font face="UI Sans, Lato, HelveticaNeue, Helvetica Neue, Helvetica, Arial, sans-serif">
|
||||
<span style="font-variant-ligatures: no-common-ligatures;">
|
||||
sw-aggr-edge-01
|
||||
<br/>
|
||||
(USW Aggregation)
|
||||
</span>
|
||||
</font>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
<text x="340" y="275" fill="light-dark(#000000,#FFFFFF)" font-family=""Helvetica"" font-size="12px" text-anchor="middle">
|
||||
sw-aggr-edge-01...
|
||||
</text>
|
||||
</switch>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<switch>
|
||||
<g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
|
||||
<a transform="translate(0,-5)" xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems" target="_blank">
|
||||
<text text-anchor="middle" font-size="10px" x="50%" y="100%">
|
||||
Text is not SVG - cannot display
|
||||
</text>
|
||||
</a>
|
||||
</switch>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 45 KiB |
BIN
feature/network/NW-diagram.png
Normal file
BIN
feature/network/NW-diagram.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 70 KiB |
274
feature/network/network-diagram.html
Normal file
274
feature/network/network-diagram.html
Normal file
@@ -0,0 +1,274 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="ja">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Network IP Map</title>
|
||||
<style>
|
||||
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@300;400;600;700&family=Syne:wght@400;700;800&display=swap');
|
||||
:root {
|
||||
--bg:#0a0e1a;--surface:#111827;--border:#1e2d40;--text:#e2e8f0;--muted:#64748b;--accent:#38bdf8;
|
||||
--vlan10:#f59e0b;--vlan20h:#10b981;--vlan20v:#34d399;--vlan30:#8b5cf6;--vlan40:#3b82f6;
|
||||
--vlan50:#f43f5e;--vlan60:#f97316;--prv:#06b6d4;--wan:#84cc16;
|
||||
}
|
||||
*{margin:0;padding:0;box-sizing:border-box}
|
||||
body{background:var(--bg);color:var(--text);font-family:'JetBrains Mono',monospace;font-size:13px;line-height:1.5;padding:32px;min-height:100vh}
|
||||
h1{font-family:'Syne',sans-serif;font-size:22px;font-weight:800;letter-spacing:.05em;color:var(--accent);margin-bottom:4px}
|
||||
.subtitle{color:var(--muted);font-size:11px;margin-bottom:32px;letter-spacing:.1em;text-transform:uppercase}
|
||||
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1100px}
|
||||
.section{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}
|
||||
.section.full-width{grid-column:1/-1}
|
||||
.section-header{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border);background:rgba(255,255,255,.02)}
|
||||
.section-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
|
||||
.section-title{font-family:'Syne',sans-serif;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
|
||||
.section-range{margin-left:auto;font-size:11px;color:var(--muted)}
|
||||
.sub-label{padding:8px 16px 2px;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;border-top:1px solid var(--border);margin-top:4px}
|
||||
.sub-label.first{border-top:none;margin-top:0}
|
||||
.device-list{padding:4px 0}
|
||||
.device-row{display:grid;grid-template-columns:18px 1fr 160px;align-items:center;gap:8px;padding:5px 16px;transition:background .15s}
|
||||
.device-row:hover{background:rgba(255,255,255,.03)}
|
||||
.device-icon{font-size:10px;text-align:center}
|
||||
.device-name{color:#cbd5e1;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
|
||||
.device-name .hw{color:var(--muted);font-size:10px;margin-left:4px}
|
||||
.device-ip{font-size:12px;text-align:right;font-weight:600}
|
||||
.dhcp-bar{padding:6px 16px;display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.2);border-top:1px solid var(--border)}
|
||||
.dhcp-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;flex-shrink:0}
|
||||
.dhcp-range{font-size:11px;color:var(--muted)}
|
||||
.dhcp-track{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden;margin:0 8px}
|
||||
.dhcp-fill{height:100%;border-radius:2px;opacity:.6}
|
||||
.vm-table{width:100%;border-collapse:collapse;font-size:11px}
|
||||
.vm-table td{padding:4px 16px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--muted)}
|
||||
.vm-table td:first-child{color:var(--vlan20v);font-weight:600}
|
||||
.vm-table tr:last-child td{border-bottom:none}
|
||||
.note{padding:6px 16px 8px;font-size:10px;color:var(--muted);border-top:1px solid var(--border);background:rgba(0,0,0,.15)}
|
||||
.badge{display:inline-block;font-size:9px;padding:1px 6px;border-radius:3px;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
|
||||
.badge-active{background:rgba(56,189,248,.15);color:var(--accent)}
|
||||
.badge-vip{background:rgba(6,182,212,.15);color:var(--prv)}
|
||||
.badge-fixed{background:rgba(132,204,22,.15);color:var(--wan)}
|
||||
.badge-mobile{background:rgba(249,115,22,.15);color:var(--vlan60)}
|
||||
.prv-cols{display:grid;grid-template-columns:1fr 2fr}
|
||||
.prv-col{border-right:1px solid var(--border)}
|
||||
.prv-col:last-child{border-right:none}
|
||||
.prv-col-header{padding:6px 16px;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--border);background:rgba(0,0,0,.1)}
|
||||
.ssid-table{width:100%;border-collapse:collapse;font-size:11px}
|
||||
.ssid-table th{padding:5px 16px;text-align:left;color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--border);background:rgba(0,0,0,.1)}
|
||||
.ssid-table td{padding:6px 16px;border-bottom:1px solid rgba(255,255,255,.04);vertical-align:middle}
|
||||
.ssid-table tr:last-child td{border-bottom:none}
|
||||
.rule-allow{color:#10b981;font-size:10px}
|
||||
.rule-deny{color:#f43f5e;font-size:10px}
|
||||
@media(max-width:720px){.grid{grid-template-columns:1fr}.section.full-width{grid-column:1}.prv-cols{grid-template-columns:1fr}.prv-col{border-right:none;border-bottom:1px solid var(--border)}body{padding:16px}}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1>NETWORK IP MAP</h1>
|
||||
<p class="subtitle">Infrastructure Address Plan · 2026</p>
|
||||
|
||||
<div class="grid">
|
||||
|
||||
<!-- WAN -->
|
||||
<div class="section full-width">
|
||||
<div class="section-header">
|
||||
<div class="section-dot" style="background:var(--wan)"></div>
|
||||
<span class="section-title">WAN</span>
|
||||
<span class="section-range">Public IPs</span>
|
||||
</div>
|
||||
<div class="device-list">
|
||||
<div class="device-row" style="grid-template-columns:18px 1fr 220px 100px">
|
||||
<span class="device-icon">🌐</span>
|
||||
<span class="device-name">WAN1 — Flets</span>
|
||||
<span class="device-ip" style="color:var(--wan)">133.27.54.201/32</span>
|
||||
<span><span class="badge badge-fixed">Static</span></span>
|
||||
</div>
|
||||
<div class="device-row" style="grid-template-columns:18px 1fr 220px 100px">
|
||||
<span class="device-icon">📡</span>
|
||||
<span class="device-name">WAN2 — LTE/5G</span>
|
||||
<span class="device-ip" style="color:var(--wan)">106.128.57.19/28</span>
|
||||
<span><span class="badge badge-mobile">Dynamic</span></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- VLAN 10 -->
|
||||
<div class="section">
|
||||
<div class="section-header">
|
||||
<div class="section-dot" style="background:var(--vlan10)"></div>
|
||||
<span class="section-title" style="color:var(--vlan10)">VLAN 10 — MGMT</span>
|
||||
<span class="section-range">10.0.10.0/24</span>
|
||||
</div>
|
||||
<div class="device-list">
|
||||
<div class="device-row"><span class="device-icon">🔀</span><span class="device-name">rt-edge-01 <span class="hw">RTX 1300</span></span><span class="device-ip" style="color:var(--vlan10)">10.0.10.1</span></div>
|
||||
<div class="device-row"><span class="device-icon">🔗</span><span class="device-name">rt-aggr-edge-01 <span class="hw">USW Aggr</span></span><span class="device-ip" style="color:var(--vlan10)">10.0.10.11</span></div>
|
||||
<div class="device-row"><span class="device-icon">🖧</span><span class="device-name">sw-srv-01 <span class="hw">AT-x510</span></span><span class="device-ip" style="color:var(--vlan10)">10.0.10.21</span></div>
|
||||
<div class="device-row"><span class="device-icon">🖧</span><span class="device-name">sw-srv-02 <span class="hw">AT-x510</span></span><span class="device-ip" style="color:var(--vlan10)">10.0.10.22</span></div>
|
||||
<div class="device-row"><span class="device-icon">🔗</span><span class="device-name">sw-aggr-srv-01 <span class="hw">USW Aggr</span></span><span class="device-ip" style="color:var(--vlan10)">10.0.10.31</span></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- VLAN 20 -->
|
||||
<div class="section">
|
||||
<div class="section-header">
|
||||
<div class="section-dot" style="background:var(--vlan20h)"></div>
|
||||
<span class="section-title" style="color:var(--vlan20h)">VLAN 20 — SERVER</span>
|
||||
<span class="section-range">10.0.20.0/22</span>
|
||||
</div>
|
||||
<div class="sub-label first">HOST — 10.0.20.0/24</div>
|
||||
<div class="device-list">
|
||||
<div class="device-row"><span class="device-icon">🔀</span><span class="device-name">Gateway</span><span class="device-ip" style="color:var(--vlan20h)">10.0.20.1</span></div>
|
||||
<div class="device-row"><span class="device-icon">🖥</span><span class="device-name">n1-pro-pve <span class="hw">n1-pro</span></span><span class="device-ip" style="color:var(--vlan20h)">10.0.20.11</span></div>
|
||||
<div class="device-row"><span class="device-icon">🍓</span><span class="device-name">sc-rpi4-01 <span class="hw">RPi4</span></span><span class="device-ip" style="color:var(--vlan20h)">10.0.20.21</span></div>
|
||||
<div class="device-row"><span class="device-icon">🖥</span><span class="device-name">x86-01-pve <span class="hw">GEM 10</span></span><span class="device-ip" style="color:var(--vlan20h)">10.0.20.51</span></div>
|
||||
<div class="device-row"><span class="device-icon">🖥</span><span class="device-name">x86-02-pve <span class="hw">GEM 10</span></span><span class="device-ip" style="color:var(--vlan20h)">10.0.20.52</span></div>
|
||||
</div>
|
||||
<div class="dhcp-bar">
|
||||
<span class="dhcp-label">Static</span>
|
||||
<div class="dhcp-track"><div class="dhcp-fill" style="width:78%;background:var(--vlan20h)"></div></div>
|
||||
<span class="dhcp-range">.10–.199 / DHCP .200–.230</span>
|
||||
</div>
|
||||
<div class="sub-label">VM — 10.0.21.0/24 〜 10.0.23.0/24</div>
|
||||
<table class="vm-table">
|
||||
<tr><td>10.0.21.0/24</td><td>VM 汎用(優先使用)</td></tr>
|
||||
<tr><td>10.0.22.0/24</td><td>予備・用途別拡張</td></tr>
|
||||
<tr><td>10.0.23.0/24</td><td>予備・用途別拡張</td></tr>
|
||||
</table>
|
||||
<div class="note">静的割当: 各 /24 の .1–.199</div>
|
||||
</div>
|
||||
|
||||
<!-- VLAN 30 -->
|
||||
<div class="section">
|
||||
<div class="section-header">
|
||||
<div class="section-dot" style="background:var(--vlan30)"></div>
|
||||
<span class="section-title" style="color:var(--vlan30)">VLAN 30 — STORAGE</span>
|
||||
<span class="section-range">10.0.30.0/24</span>
|
||||
</div>
|
||||
<div class="device-list">
|
||||
<div class="device-row"><span class="device-icon">🔀</span><span class="device-name">Gateway</span><span class="device-ip" style="color:var(--vlan30)">10.0.30.1</span></div>
|
||||
<div class="device-row"><span class="device-icon">💾</span><span class="device-name">stg-01-nas <span class="hw">NAS</span></span><span class="device-ip" style="color:var(--vlan30)">10.0.30.11</span></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- VLAN 40 -->
|
||||
<div class="section">
|
||||
<div class="section-header">
|
||||
<div class="section-dot" style="background:var(--vlan40)"></div>
|
||||
<span class="section-title" style="color:var(--vlan40)">VLAN 40 — CLIENT</span>
|
||||
<span class="section-range">10.0.40.0/24</span>
|
||||
</div>
|
||||
<div class="device-list">
|
||||
<div class="device-row"><span class="device-icon">🔀</span><span class="device-name">Gateway</span><span class="device-ip" style="color:var(--vlan40)">10.0.40.1</span></div>
|
||||
</div>
|
||||
<div class="dhcp-bar">
|
||||
<span class="dhcp-label">DHCP</span>
|
||||
<div class="dhcp-track"><div class="dhcp-fill" style="width:40%;background:var(--vlan40)"></div></div>
|
||||
<span class="dhcp-range">.100 – .199</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- VLAN 50 -->
|
||||
<div class="section">
|
||||
<div class="section-header">
|
||||
<div class="section-dot" style="background:var(--vlan50)"></div>
|
||||
<span class="section-title" style="color:var(--vlan50)">VLAN 50 — GUEST</span>
|
||||
<span class="section-range">10.0.50.0/24</span>
|
||||
</div>
|
||||
<div class="device-list">
|
||||
<div class="device-row"><span class="device-icon">🔀</span><span class="device-name">Gateway</span><span class="device-ip" style="color:var(--vlan50)">10.0.50.1</span></div>
|
||||
</div>
|
||||
<div class="dhcp-bar">
|
||||
<span class="dhcp-label">DHCP</span>
|
||||
<div class="dhcp-track"><div class="dhcp-fill" style="width:48%;background:var(--vlan50)"></div></div>
|
||||
<span class="dhcp-range">.100 – .220(分離)</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- VLAN 60 -->
|
||||
<div class="section">
|
||||
<div class="section-header">
|
||||
<div class="section-dot" style="background:var(--vlan60)"></div>
|
||||
<span class="section-title" style="color:var(--vlan60)">VLAN 60 — IoT</span>
|
||||
<span class="section-range">10.0.60.0/24</span>
|
||||
</div>
|
||||
<div class="device-list">
|
||||
<div class="device-row"><span class="device-icon">🔀</span><span class="device-name">Gateway</span><span class="device-ip" style="color:var(--vlan60)">10.0.60.1</span></div>
|
||||
<div class="device-row"><span class="device-icon">📦</span><span class="device-name">静的 IoT 機器</span><span class="device-ip" style="color:var(--vlan60)">.2 – .99</span></div>
|
||||
</div>
|
||||
<div class="dhcp-bar">
|
||||
<span class="dhcp-label">DHCP</span>
|
||||
<div class="dhcp-track"><div class="dhcp-fill" style="width:20%;background:var(--vlan60)"></div></div>
|
||||
<span class="dhcp-range">.100 – .149</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- PRV -->
|
||||
<div class="section full-width">
|
||||
<div class="section-header">
|
||||
<div class="section-dot" style="background:var(--prv)"></div>
|
||||
<span class="section-title" style="color:var(--prv)">VLAN 100 — PRV</span>
|
||||
<span class="section-range">192.168.100.0/22 · AP VLAN非対応 · SSID別論理分離</span>
|
||||
</div>
|
||||
<div class="prv-cols">
|
||||
<div class="prv-col">
|
||||
<div class="prv-col-header">インフラ静的割当</div>
|
||||
<div class="device-list">
|
||||
<div class="device-row" style="grid-template-columns:18px 1fr 150px">
|
||||
<span class="device-icon">🛡</span>
|
||||
<span class="device-name">CARP VIP <span class="badge badge-vip">GW</span></span>
|
||||
<span class="device-ip" style="color:var(--prv)">192.168.100.1</span>
|
||||
</div>
|
||||
<div class="device-row" style="grid-template-columns:18px 1fr 150px">
|
||||
<span class="device-icon">🔥</span>
|
||||
<span class="device-name">opnsense-01 <span class="badge badge-active">Active</span></span>
|
||||
<span class="device-ip" style="color:var(--prv)">192.168.100.2</span>
|
||||
</div>
|
||||
<div class="device-row" style="grid-template-columns:18px 1fr 150px">
|
||||
<span class="device-icon">🔗</span>
|
||||
<span class="device-name">sw-flex <span class="hw">USW Flex</span></span>
|
||||
<span class="device-ip" style="color:var(--prv)">192.168.100.11</span>
|
||||
</div>
|
||||
<div class="device-row" style="grid-template-columns:18px 1fr 150px">
|
||||
<span class="device-icon">📶</span>
|
||||
<span class="device-name">ap-prv-01 <span class="hw">sw-flex 配下</span></span>
|
||||
<span class="device-ip" style="color:var(--prv)">192.168.100.21</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="note">静的: .1–.30 予備: 192.168.103.0/24</div>
|
||||
</div>
|
||||
<div class="prv-col">
|
||||
<div class="prv-col-header">DHCP スコープ(SSID 別 / 論理分離)</div>
|
||||
<table class="ssid-table">
|
||||
<thead>
|
||||
<tr><th>SSID 用途</th><th>便宜上のCIDR</th><th>DHCP レンジ</th><th>OPNsense ルール</th></tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="color:#e2e8f0">Main(一般端末)</td>
|
||||
<td style="color:var(--prv)">192.168.100.0/24</td>
|
||||
<td style="color:var(--muted)">.100 – .200</td>
|
||||
<td><span class="rule-allow">✓ 内部アクセス許可</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="color:#e2e8f0">IoT</td>
|
||||
<td style="color:var(--vlan60)">192.168.101.0/24</td>
|
||||
<td style="color:var(--muted)">.100 – .200</td>
|
||||
<td><span class="rule-deny">✗ 内部遮断 / WAN のみ</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="color:#e2e8f0">Guest</td>
|
||||
<td style="color:var(--vlan50)">192.168.102.0/24</td>
|
||||
<td style="color:var(--muted)">.100 – .200</td>
|
||||
<td><span class="rule-deny">✗ 内部遮断 / WAN のみ</span></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div style="margin-top:20px;font-size:10px;color:var(--muted);letter-spacing:.08em">
|
||||
SRV: 10.0.0.0/16 | PRV: 192.168.100.0/22 | OPNsense HA: CARP + pfsync | VLAN 110 / 120 廃止
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
129
feature/network/network-diagram.md
Normal file
129
feature/network/network-diagram.md
Normal file
@@ -0,0 +1,129 @@
|
||||
# Network IP Map
|
||||
|
||||
## WAN
|
||||
|
||||
| インターフェース | IP アドレス | 回線 |
|
||||
|---|---|---|
|
||||
| WAN1 | `133.27.54.201/32` | Flets(固定IP) |
|
||||
| WAN2 | `106.128.57.19/28` | LTE/5G(モバイル) |
|
||||
|
||||
---
|
||||
|
||||
## SRV ネットワーク(10.0.0.0/16)
|
||||
|
||||
### VLAN 10 — MGMT(`10.0.10.0/24`)
|
||||
|
||||
| ホスト名 | 機器 | IP アドレス |
|
||||
|---|---|---|
|
||||
| `rt-edge-01` | RTX 1300 | `10.0.10.1` |
|
||||
| `rt-aggr-edge-01` | USW Aggregation | `10.0.10.11` |
|
||||
| `sw-srv-01` | AT-x510-28GTX | `10.0.10.21` |
|
||||
| `sw-srv-02` | AT-x510-28GTX | `10.0.10.22` |
|
||||
| `sw-aggr-srv-01` | USW Aggregation | `10.0.10.31` |
|
||||
|
||||
---
|
||||
|
||||
### VLAN 20 — SERVER(`10.0.20.0/22`)
|
||||
|
||||
> 便宜上 HOST と VM でサブネットを分割。実態は VLAN 20 単一。`10.0.20.0/22` のレンジは `10.0.20.0` 〜 `10.0.23.255`(`/24` 4本)。
|
||||
|
||||
#### HOST: `10.0.20.0/24`
|
||||
|
||||
| ホスト名 | 機器 | IP アドレス |
|
||||
|---|---|---|
|
||||
| Gateway | — | `10.0.20.1` |
|
||||
| `n1-pro-pve` | n1-pro | `10.0.20.11` |
|
||||
| `sc-rpi4-01` | Raspberry Pi 4 | `10.0.20.21` |
|
||||
| `x86-01-pve` | GEM 10 | `10.0.20.51` |
|
||||
| `x86-02-pve` | GEM 10 | `10.0.20.52` |
|
||||
|
||||
- **静的割当**: `.10` – `.199`
|
||||
- **DHCP**: `.200` – `.230`
|
||||
|
||||
#### VM: `10.0.21.0/24` 〜 `10.0.23.0/24`(`/22` 残り空間)
|
||||
|
||||
| 便宜上のCIDR | 用途 |
|
||||
|---|---|
|
||||
| `10.0.21.0/24` | VM 汎用(優先使用) |
|
||||
| `10.0.22.0/24` | 予備・用途別拡張 |
|
||||
| `10.0.23.0/24` | 予備・用途別拡張 |
|
||||
|
||||
- **VM 静的割当**: 各 `/24` の `.1` – `.199`
|
||||
|
||||
---
|
||||
|
||||
### VLAN 30 — STORAGE(`10.0.30.0/24`)
|
||||
|
||||
| ホスト名 | 機器 | IP アドレス |
|
||||
|---|---|---|
|
||||
| Gateway | — | `10.0.30.1` |
|
||||
| `stg-01-nas` | NAS | `10.0.30.11` |
|
||||
|
||||
---
|
||||
|
||||
### VLAN 40 — CLIENT(`10.0.40.0/24`)
|
||||
|
||||
| ホスト名 | 機器 | IP アドレス |
|
||||
|---|---|---|
|
||||
| Gateway | — | `10.0.40.1` |
|
||||
|
||||
- **DHCP**: `.100` – `.199`
|
||||
|
||||
---
|
||||
|
||||
### VLAN 50 — GUEST(`10.0.50.0/24`)
|
||||
|
||||
| ホスト名 | 機器 | IP アドレス |
|
||||
|---|---|---|
|
||||
| Gateway | — | `10.0.50.1` |
|
||||
|
||||
- **DHCP**: `.100` – `.220`(分離運用)
|
||||
|
||||
---
|
||||
|
||||
### VLAN 60 — IoT(`10.0.60.0/24`)
|
||||
|
||||
| ホスト名 | 機器 | IP アドレス |
|
||||
|---|---|---|
|
||||
| Gateway | — | `10.0.60.1` |
|
||||
| 静的 IoT 機器 | — | `.2` – `.99` |
|
||||
|
||||
- **DHCP**: `.100` – `.149`
|
||||
|
||||
---
|
||||
|
||||
## PRV ネットワーク(192.168.100.0/22)
|
||||
|
||||
> AP は VLAN 非対応のため VLAN 100 単一で運用。IoT・Guest の分離は SSID 別の DHCP スコープ+OPNsense ファイアウォールルールのみで対応。
|
||||
|
||||
### VLAN 100 — PRV(`192.168.100.0/22`)
|
||||
|
||||
#### インフラ静的割当
|
||||
|
||||
| ホスト名 | 役割 | IP アドレス |
|
||||
|---|---|---|
|
||||
| CARP VIP | デフォルト GW | `192.168.100.1` |
|
||||
| `opnsense-01` | OPNsense(Active) | `192.168.100.2` |
|
||||
| `sw-flex` | USW Flex | `192.168.100.11` |
|
||||
| `ap-prv-01` | AP(sc-flex 配下) | `192.168.100.21` |
|
||||
|
||||
#### DHCP スコープ(SSID 別 / 論理分離)
|
||||
|
||||
| SSID 用途 | 便宜上のCIDR | DHCP レンジ | OPNsense ルール |
|
||||
|---|---|---|---|
|
||||
| Main(一般端末) | `192.168.100.0/24` | `192.168.100.100` – `.200` | 内部アクセス許可 |
|
||||
| IoT | `192.168.101.0/24` | `192.168.101.100` – `.200` | 内部アクセス遮断、WAN のみ |
|
||||
| Guest | `192.168.102.0/24` | `192.168.102.100` – `.200` | 内部アクセス遮断、WAN のみ |
|
||||
|
||||
- **インフラ静的**: `192.168.100.1` – `.30`
|
||||
- **予備/将来用**: `192.168.103.0/24`
|
||||
|
||||
---
|
||||
|
||||
## 備考
|
||||
|
||||
- SRV 系 VLAN はすべて `10.0.0.0/16` 内で `/24` 単位に分割
|
||||
- PRV 系は `192.168.100.0/22` を VLAN 単位にサブネット分割
|
||||
- OPNsense HA 構成: CARP + pfsync によるセッション同期(推奨)
|
||||
- デフォルト GW はすべて `.1`、インフラ機器は `.2`–`.99`
|
||||
- PRV は VLAN 100 単一運用。IoT / Guest 分離は DHCP スコープ+ファイアウォールルールで対応
|
||||
Reference in New Issue
Block a user