{"id":13,"date":"2026-11-01T00:45:23","date_gmt":"2026-10-31T15:45:23","guid":{"rendered":"https:\/\/tools.bl-forest.com\/?page_id=13"},"modified":"2026-11-01T01:43:12","modified_gmt":"2026-10-31T16:43:12","slug":"ipv6%e3%82%b5%e3%83%96%e3%83%8d%e3%83%83%e3%83%88%e8%a8%88%e7%ae%97%e3%83%84%e3%83%bc%e3%83%ab","status":"publish","type":"page","link":"https:\/\/tools.bl-forest.com\/?page_id=13","title":{"rendered":"IPv6\u30b5\u30d6\u30cd\u30c3\u30c8\u8a08\u7b97\u30c4\u30fc\u30eb"},"content":{"rendered":"\n<style>.subnet-lab-ipv6{max-width:none!important;width:100%;display:block}<\/style>\n<div class=\"subnet-lab-ipv6\"><\/div>\n<script>\n<!--\n\n(function(){\nconst host=document.currentScript.previousElementSibling;if(!host||host.shadowRoot)return;const root=host.attachShadow({mode:\"open\"});\nroot.innerHTML=\"<style>:host{--ink:#202d52;--muted:#637785;--teal:#273e8e;--line:#dce5e8;--paper:#ffffff;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace}*{box-sizing:border-box}:host{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI','Noto Sans JP',sans-serif}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #4964bc;outline-offset:4px}header{max-width:1240px;margin:auto;padding:28px 40px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:26px}.brand{font-weight:850;letter-spacing:.02em;color:var(--ink);text-decoration:none;font-size:19px}.brand>span:not(.mark){font-weight:400}.mark{display:inline-grid;place-items:center;background:var(--ink);color:#ffffff;border-radius:8px;width:32px;height:32px;margin-right:8px}.header-note{font-size:10px;letter-spacing:.13em;color:var(--muted)}.local{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:11px}.local i{width:6px;height:6px;background:#273e8e;border-radius:50%}main{max-width:1160px;margin:auto;padding:0 24px}.intro{padding:58px 0 36px;position:relative}.eyebrow{font-size:10px;font-weight:750;letter-spacing:.16em;color:var(--teal);margin:0 0 20px}.eyebrow span{float:right;color:#7f919a}h1{font-size:43px;line-height:1.4;letter-spacing:.02em;font-weight:750;margin:0 0 26px}h1 em{font-style:normal;color:var(--teal)}.lede{font-size:13px;line-height:1.9;color:var(--muted);margin:0}.workspace{display:grid;grid-template-columns:390px 1fr;gap:26px;align-items:start}.input-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px}.section-heading{display:flex;align-items:center;gap:10px}.step{font:11px var(--mono);color:var(--teal);background:#edf1fc;border-radius:4px;padding:5px 7px}.section-heading h2{font-size:15px;margin:0;font-weight:700}.tag{margin-left:auto;font:10px var(--mono);border:1px solid var(--line);padding:4px 8px;border-radius:4px;color:var(--muted)}form{margin-top:27px}label{display:block;font-size:12px;font-weight:650;margin:20px 0 9px}label small{font-size:10px;font-weight:400;color:var(--muted);float:right}input{width:100%;background:#f8f9fd;border:1px solid #cbd8dd;border-radius:7px;padding:14px 12px;color:var(--ink);font:17px var(--mono);min-width:0}input::placeholder{font-size:12px}.help{font-size:10px;color:var(--muted);line-height:1.7;margin:8px 0 0}.preset-label{font-size:10px;color:var(--muted);margin:25px 0 10px}.presets{display:flex;gap:7px;flex-wrap:wrap}.presets button{border:1px solid var(--line);background:white;color:var(--muted);font:12px var(--mono);padding:8px 10px;border-radius:5px}.presets button:hover,.presets button.active{border-color:var(--teal);color:var(--teal);background:#edf1fc}.calculate{margin-top:25px;width:100%;border:0;background:var(--teal);color:#fff;font-size:13px;font-weight:650;padding:15px;border-radius:7px;text-align:left}.calculate span{float:right;font-size:18px}.calculate:hover{background:#1c2d68}.privacy{display:flex;gap:9px;border-top:1px solid var(--line);margin-top:25px;padding-top:16px;color:var(--muted);font-size:10px;line-height:1.9}.privacy>span{color:var(--teal);font-size:19px}.privacy p{margin:0}.result-heading{display:flex;align-items:center;justify-content:space-between;margin:3px 0 16px}.copy{font-size:11px;border:0;background:none;color:var(--muted);padding:8px}.copy span{margin-left:6px;font-size:16px}.copy:hover{color:var(--teal)}.copy:disabled{opacity:.45;cursor:not-allowed}.status{font-size:11px;margin:0;color:var(--teal)}.status:not(:empty){margin-bottom:10px}.network-card{padding:24px 27px;background:#273e8e;border-radius:12px;color:white;background-image:linear-gradient(120deg,#273e8e,#273e8e);overflow:hidden}.network-top{display:flex;justify-content:space-between;align-items:center;font:10px var(--mono);letter-spacing:.13em;color:#e4e9ff}.network-top span:last-child{border:1px solid #9fafe6;border-radius:4px;padding:5px 8px;letter-spacing:0}.network-value{font:clamp(23px,3vw,36px) var(--mono);margin:20px 0;color:#ffffff;white-space:nowrap;letter-spacing:-.04em}.network-bottom{display:flex;justify-content:space-between;color:#e4e9ff;font-size:10px}.mini-line{color:#d4ddff}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.metrics>div{padding:18px 22px;background:#fff;border:1px solid var(--line);border-radius:9px}.metrics span{display:block;font-size:11px;color:var(--muted)}.metrics strong{display:block;font:clamp(19px,2.8vw,29px) var(--mono);letter-spacing:-.05em;margin:9px 0 5px}.metrics small{font:10px var(--mono);color:var(--muted)}.details{margin:0;background:#fff;border:1px solid var(--line);border-radius:9px;padding:0 22px}.details>div{display:flex;justify-content:space-between;gap:10px;padding:15px 0;border-bottom:1px solid #edf1f2}.details>div:last-child{border:0}.details dt{font-size:11px;color:var(--muted)}.details dd{font:14px var(--mono);margin:0}.details .range{display:block}.range dd{display:flex;gap:13px;margin-top:12px;flex-wrap:wrap}.range-arrow{color:#8da1aa}.notice{font-size:10px;color:var(--muted);line-height:1.75;margin:12px 0 0}#error{font-size:12px;line-height:1.7;background:#fff0eb;color:#a94022;padding:12px;border-radius:6px}#result-body.stale{opacity:.38}.binary-section{border:1px solid var(--line);background:white;border-radius:10px;margin:28px 0 42px}summary{cursor:pointer;list-style:none;padding:18px 22px;display:flex;justify-content:space-between;font-size:13px}summary::-webkit-details-marker{display:none}summary .step{margin-right:12px}summary small{margin-left:12px;color:var(--muted);font:10px var(--mono)}.expand{color:var(--teal)}details[open] .expand{transform:rotate(45deg)}.binary-content{border-top:1px solid var(--line);padding:18px 22px;overflow:auto}.legend{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:10px;margin:0 0 17px}.legend i{width:8px;height:8px;background:var(--teal)}.legend .host{background:#a6b4bd;margin-left:15px}.binary-row{display:flex;align-items:center;gap:25px;margin-bottom:12px;min-width:580px}.binary-row>span{font-size:10px;min-width:105px;color:var(--muted)}.bits{font:15px var(--mono);letter-spacing:1px}.bits span{color:var(--teal)}.bits .host-bit{color:#8a9ba6}.bits b{font-weight:400;margin-right:9px}.reference{display:grid;grid-template-columns:1fr 1.3fr;gap:45px;padding-bottom:40px}.reference .eyebrow{margin-bottom:12px}.reference h2{font-size:20px;margin:0 0 13px}.reference p:not(.eyebrow){font-size:11px;color:var(--muted);line-height:1.8}.table-wrap{border:1px solid var(--line);border-radius:9px;overflow:hidden}table{width:100%;border-collapse:collapse;font-size:11px;text-align:left}th{font-weight:500;background:#edf1fc;padding:10px 15px;color:var(--muted)}td{padding:10px 15px;border-top:1px solid var(--line);font-family:var(--mono)}td:last-child,th:last-child{text-align:right}td button{background:none;border:0;color:var(--teal);font:inherit;padding:3px 0;text-decoration:underline;text-underline-offset:3px}footer{border-top:1px solid var(--line);padding:25px 0 30px;display:flex;align-items:center;gap:25px;color:var(--muted);font-size:10px}footer .brand{font-size:13px}footer>span:last-child{margin-left:auto;font-family:var(--mono)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:760px){header{padding:20px 22px}.header-note{display:none}main{padding:0 20px}.intro{padding:38px 0 28px}h1{font-size:32px}.lede{font-size:12px}.eyebrow{font-size:8px}.workspace{grid-template-columns:1fr;gap:26px}.input-card{padding:22px}.network-value{font-size:32px}.metrics strong{font-size:27px}.reference{grid-template-columns:1fr;gap:14px}.binary-section{margin-bottom:30px}summary small{display:none}footer{flex-wrap:wrap;gap:10px}footer p{margin:0}footer>span:last-child{width:100%;margin-left:0}.local{font-size:9px}.brand{font-size:17px}}@media(max-width:370px){.network-value{font-size:27px}.metrics{gap:8px}.metrics>div{padding:16px 13px}.metrics strong{font-size:22px}.local{display:none}.details dd{font-size:12px}th,td{padding:10px}}\\nheader{background:#273e8e;color:#fff}header .brand,header .header-note,header .local{color:#fff}header .mark{background:#fff;color:#273e8e}header .local i{background:#fff}.network-card{background-image:none}:host{display:block;container-type:inline-size}header .brand{color:white}.network-value{white-space:normal;overflow-wrap:anywhere;font-size:24px}.network-value .cidr-prefix{white-space:nowrap;overflow-wrap:normal}.details>div{display:block}.details dd{overflow-wrap:anywhere;margin-top:9px;line-height:1.6}.metrics strong{font-size:19px;overflow-wrap:anywhere;line-height:1.5}.metrics{grid-template-columns:1.5fr 1fr}.binary-row{min-width:0;display:block}.binary-row>span{display:block;margin-bottom:8px}.bits{overflow-wrap:anywhere;line-height:1.9;font-size:12px}.subdivision{margin:25px 0 30px;padding:24px;border:1px solid var(--line);border-radius:10px}.subdivision h2{font-size:18px}.subdivision input{max-width:160px}.subdivision button{margin:12px 0;width:auto;padding:13px 24px}.subnets{padding-left:26px;line-height:1.9;font:12px\/1.9 var(--mono);overflow-wrap:anywhere;max-height:360px;overflow:auto}.subdivision p{font-size:12px;line-height:1.8;overflow-wrap:anywhere}.sub-error{color:#a94022}.binary-section{margin-bottom:25px}@container(max-width:760px){.workspace{grid-template-columns:1fr}.header-note{display:none}header{padding:20px}.reference{grid-template-columns:1fr}.network-value{font-size:24px}}@media(max-width:450px){.metrics{grid-template-columns:1fr}.details dd{font-size:12px}h1{font-size:28px}.eyebrow span{display:none}}header{flex-wrap:wrap;gap:12px}header .brand{max-width:100%;white-space:normal}<\/style><header><span class=\\\"brand\\\"><span class=\\\"mark\\\">\u2318<\/span> Blue Forest <span>LAB<\/span><\/span><span class=\\\"header-note\\\">NETWORK ENGINEER\u2019S TOOLKIT<\/span><span class=\\\"local\\\"><i><\/i> \u30d6\u30e9\u30a6\u30b6\u5185\u3067\u8a08\u7b97<\/span><\/header><main>\\n<section class=\\\"intro\\\"><p class=\\\"eyebrow\\\">IPv6 SUBNET CALCULATOR <span>02 \/ TOOLS<\/span><\/p><h1>IPv6\u306e\u30b5\u30d6\u30cd\u30c3\u30c8\u8a08\u7b97\u30da\u30fc\u30b8<\/h1><p class=\\\"lede\\\">IPv6 \u30a2\u30c9\u30ec\u30b9\u3068\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u304b\u3089\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3068\u7bc4\u56f2\u3092\u3059\u3050\u306b\u3002<br>128 \u30d3\u30c3\u30c8\u306e\u8a08\u7b97\u3082\u3001\u30b5\u30d6\u30cd\u30c3\u30c8\u306e\u5206\u5272\u3082\u3001\u3053\u306e\u30d6\u30e9\u30a6\u30b6\u3060\u3051\u3067\u3002<\/p><\/section>\\n<div class=\\\"workspace\\\"><section class=\\\"input-card\\\" aria-labelledby=\\\"input-title\\\"><div class=\\\"section-heading\\\"><span class=\\\"step\\\">01<\/span><h2 id=\\\"input-title\\\">\u30a2\u30c9\u30ec\u30b9\u3092\u5165\u529b<\/h2><span class=\\\"tag\\\">IPv6<\/span><\/div><form id=\\\"form\\\" novalidate><label for=\\\"ip\\\">IPv6 \u30a2\u30c9\u30ec\u30b9 <small>CIDR \u5f62\u5f0f\u3082\u4f7f\u3048\u307e\u3059<\/small><\/label><input id=\\\"ip\\\" spellcheck=\\\"false\\\" autocomplete=\\\"off\\\" value=\\\"2001:db8:1234:5678::1\/64\\\" aria-describedby=\\\"ip-help error\\\"><p class=\\\"help\\\" id=\\\"ip-help\\\">\u4f8b: 2001:db8::1 \/ 2001:db8::1\/64<br>\u30be\u30fc\u30f3 ID\uff08%eth0\uff09\u30fbURI \u5f62\u5f0f\uff08[::1]\uff09\u306f\u975e\u5bfe\u5fdc\u3067\u3059\u3002<\/p><label for=\\\"mask\\\">\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u9577<\/label><input id=\\\"mask\\\" value=\\\"\/64\\\" spellcheck=\\\"false\\\" autocomplete=\\\"off\\\" aria-describedby=\\\"mask-help error\\\"><p class=\\\"help\\\" id=\\\"mask-help\\\">\/0\u301c\/128\u3002\u30a2\u30c9\u30ec\u30b9\u306b \/ \u304c\u3042\u308b\u5834\u5408\u306f\u3001\u305d\u3061\u3089\u3092\u512a\u5148\u3057\u307e\u3059\u3002<\/p><div class=\\\"preset-label\\\">\u3088\u304f\u4f7f\u3046\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9<\/div><div class=\\\"presets\\\"><button type=\\\"button\\\" data-prefix=\\\"48\\\">\/48<\/button><button type=\\\"button\\\" data-prefix=\\\"56\\\">\/56<\/button><button type=\\\"button\\\" data-prefix=\\\"64\\\">\/64<\/button><button type=\\\"button\\\" data-prefix=\\\"96\\\">\/96<\/button><button type=\\\"button\\\" data-prefix=\\\"127\\\">\/127<\/button><button type=\\\"button\\\" data-prefix=\\\"128\\\">\/128<\/button><\/div><p id=\\\"error\\\" role=\\\"alert\\\" hidden><\/p><button type=\\\"submit\\\" class=\\\"calculate\\\">\u30b5\u30d6\u30cd\u30c3\u30c8\u3092\u8a08\u7b97 <span>\u2197<\/span><\/button><\/form><div class=\\\"privacy\\\"><span>\u25c8<\/span><p>\u5165\u529b\u3057\u305f\u30a2\u30c9\u30ec\u30b9\u306f\u3053\u306e\u30c4\u30fc\u30eb\u304b\u3089\u5916\u90e8\u306b\u9001\u4fe1\u30fb\u4fdd\u5b58\u3057\u307e\u305b\u3093\u3002\u8a08\u7b97\u306f\u30d6\u30e9\u30a6\u30b6\u5185\u3067\u5b8c\u7d50\u3057\u307e\u3059\u3002<\/p><\/div><\/section>\\n<section class=\\\"results\\\" aria-labelledby=\\\"result-title\\\"><div class=\\\"result-heading\\\"><div class=\\\"section-heading\\\"><span class=\\\"step\\\">02<\/span><h2 id=\\\"result-title\\\">\u8a08\u7b97\u7d50\u679c<\/h2><\/div><button class=\\\"copy\\\" id=\\\"copy\\\" type=\\\"button\\\">\u7d50\u679c\u3092\u30b3\u30d4\u30fc \u29c9<\/button><\/div><p class=\\\"status\\\" id=\\\"status\\\" role=\\\"status\\\" aria-live=\\\"polite\\\"><\/p><div id=\\\"result-body\\\"><div class=\\\"network-card\\\"><div class=\\\"network-top\\\"><span>NETWORK ADDRESS<\/span><span id=\\\"result-tag\\\"><\/span><\/div><div class=\\\"network-value\\\" id=\\\"network\\\"><\/div><div class=\\\"network-bottom\\\">\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a2\u30c9\u30ec\u30b9 \/ CIDR<\/div><\/div><div class=\\\"metrics\\\"><div><span>\u7dcf\u30a2\u30c9\u30ec\u30b9\u6570\uff08\u6b63\u78ba\u306a\u6574\u6570\uff09<\/span><strong id=\\\"total\\\"><\/strong><small>addresses \/ 2^(128 \u2212 prefix)<\/small><\/div><div><span>\u30db\u30b9\u30c8\u90e8\u306e\u30d3\u30c3\u30c8\u6570<\/span><strong id=\\\"hostbits\\\"><\/strong><small>bits<\/small><\/div><\/div><dl class=\\\"details\\\"><div><dt>\u5165\u529b\u30a2\u30c9\u30ec\u30b9\uff08\u77ed\u7e2e\u8868\u8a18\uff09<\/dt><dd id=\\\"address\\\"><\/dd><\/div><div><dt>\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\uff08\u7701\u7565\u306a\u3057\uff09<\/dt><dd id=\\\"full\\\"><\/dd><\/div><div><dt>\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u30de\u30b9\u30af\uff0816 \u9032\u6570\uff09<\/dt><dd id=\\\"netmask\\\"><\/dd><\/div><div><dt>\u7bc4\u56f2\u306e\u5148\u982d<\/dt><dd id=\\\"first\\\"><\/dd><\/div><div><dt>\u7bc4\u56f2\u306e\u672b\u5c3e<\/dt><dd id=\\\"last\\\"><\/dd><\/div><\/dl><p class=\\\"notice\\\">IPv6 \u306b\u30d6\u30ed\u30fc\u30c9\u30ad\u30e3\u30b9\u30c8\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u8868\u793a\u6570\u306f\u7bc4\u56f2\u5185\u306e\u5168\u30a2\u30c9\u30ec\u30b9\u6570\u3067\u3042\u308a\u3001\u5272\u308a\u5f53\u3066\u53ef\u80fd\u306a\u30db\u30b9\u30c8\u6570\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u7279\u6b8a\u7528\u9014\u30fb\u4e88\u7d04\u30fb\u904b\u7528\u4e0a\u306e\u5236\u7d04\u306f\u5225\u9014\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p><\/div><\/section><\/div>\\n<section class=\\\"binary-section\\\"><details><summary><span><span class=\\\"step\\\">03<\/span> \u30d3\u30c3\u30c8\u3067\u78ba\u8a8d\u3059\u308b <small>BINARY VIEW<\/small><\/span><span class=\\\"expand\\\">\uff0b<\/span><\/summary><div class=\\\"binary-content\\\"><p class=\\\"legend\\\"><i><\/i> \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u90e8 <i class=\\\"host\\\"><\/i> \u30db\u30b9\u30c8\u90e8<\/p><div id=\\\"binary\\\"><\/div><p class=\\\"help\\\">IPv6 \u30a2\u30c9\u30ec\u30b9 AND \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u30de\u30b9\u30af = \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a2\u30c9\u30ec\u30b9<\/p><\/div><\/details><\/section>\\n<section class=\\\"subdivision\\\"><div class=\\\"section-heading\\\"><span class=\\\"step\\\">04<\/span><h2>\u30b5\u30d6\u30cd\u30c3\u30c8\u306b\u5206\u5272\u3059\u308b<\/h2><\/div><p>\u8a08\u7b97\u3057\u305f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u3001\u540c\u3058\u9577\u3055\u306e\u5c0f\u3055\u306a\u30b5\u30d6\u30cd\u30c3\u30c8\u306b\u5206\u5272\u3057\u307e\u3059\u3002<\/p><form id=\\\"split-form\\\" novalidate><label for=\\\"target\\\">\u5206\u5272\u5148\u306e\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9<\/label><input id=\\\"target\\\" value=\\\"\/68\\\" aria-describedby=\\\"split-help split-error\\\"><p class=\\\"help\\\" id=\\\"split-help\\\">\u5143\u306e\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ee5\u4e0a\u3001\/128 \u4ee5\u4e0b\u3002\u5148\u982d 64 \u4ef6\u307e\u3067\u8868\u793a\u3057\u307e\u3059\u3002<\/p><button id=\\\"split\\\" class=\\\"calculate\\\" type=\\\"submit\\\">\u5206\u5272\u3092\u8868\u793a<\/button><\/form><p id=\\\"split-error\\\" class=\\\"sub-error\\\" role=\\\"alert\\\" hidden><\/p><div id=\\\"split-result\\\" aria-live=\\\"polite\\\"><\/div><\/section>\\n<section class=\\\"reference\\\"><div><p class=\\\"eyebrow\\\">QUICK REFERENCE<\/p><h2>128 \u30d3\u30c3\u30c8\u3092\u3001\u308f\u304b\u308a\u3084\u3059\u304f\u3002<\/h2><p>\/64 \u306f 64 \u30d3\u30c3\u30c8\u306e\u30db\u30b9\u30c8\u90e8\u3092\u6301\u3061\u307e\u3059\u3002\/127 \u306e\u7bc4\u56f2\u306f 2 \u30a2\u30c9\u30ec\u30b9\u3001\/128 \u306f 1 \u30a2\u30c9\u30ec\u30b9\u3067\u3059\u3002IPv4 \u306e\u3088\u3046\u306b 2 \u3092\u5f15\u304f\u8a08\u7b97\u306f\u3057\u307e\u305b\u3093\u3002<\/p><\/div><div class=\\\"table-wrap\\\"><table><caption class=\\\"sr-only\\\">\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u65e9\u898b\u8868<\/caption><thead><tr><th>CIDR<\/th><th>\u30db\u30b9\u30c8\u90e8<\/th><th>\u7dcf\u30a2\u30c9\u30ec\u30b9\u6570<\/th><\/tr><\/thead><tbody id=\\\"reference\\\"><\/tbody><\/table><\/div><\/section><footer><span class=\\\"brand\\\">Blue Forest <span>LAB<\/span><\/span><p>IPv6 \u5c02\u7528 \u00b7 \u7b49\u9577\u30b5\u30d6\u30cd\u30c3\u30c8\u5206\u5272\u5bfe\u5fdc<\/p><span>Built for clear networks.<\/span><\/footer><\/main>\";\n'use strict';\nconst IPv6 = (()=>{\n const MAX=(1n<<128n)-1n;\n function prefix(s){s=String(s).trim();if(!\/^\\\/?(?:0|[1-9]\\d{0,2})$\/.test(s))throw Error('\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u306f \/0\u301c\/128 \u306e\u6574\u6570\u3067\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002');const p=Number(s.replace('\/',''));if(p>128)throw Error('\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u306f \/0\u301c\/128 \u3067\u3059\u3002');return p;}\n function parse(s){if(typeof s!=='string'||!s||\/[\\s%\\[\\]\\\/]\/.test(s))throw Error('IPv6 \u30a2\u30c9\u30ec\u30b9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u30be\u30fc\u30f3 ID\uff08%eth0\uff09\u3084 URI \u306e\u89d2\u62ec\u5f27\u306b\u306f\u5bfe\u5fdc\u3057\u3066\u3044\u307e\u305b\u3093\u3002');\n if(s.includes('.')){const k=s.lastIndexOf(':');if(k<0)throw Error('IPv4 \u5358\u72ec\u3067\u306f\u306a\u304f IPv6 \u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002');const tail=s.slice(k+1);if(!\/^(0|[1-9]\\d{0,2})(\\.(0|[1-9]\\d{0,2})){3}$\/.test(tail))throw Error('\u57cb\u3081\u8fbc\u307f IPv4 \u306e\u5f62\u5f0f\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093\u3002');const a=tail.split('.').map(Number);if(a.some(n=>n>255))throw Error('IPv4 \u306e\u5404\u5024\u306f 0\u301c255 \u3067\u3059\u3002');s=s.slice(0,k+1)+((a[0]<<8)|a[1]).toString(16)+':'+((a[2]<<8)|a[3]).toString(16);}\n if(!\/^[0-9a-f:]+$\/i.test(s))throw Error('IPv6 \u306f 16 \u9032\u6570\u3068 : \u3067\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002');let parts;\n if(s.includes('::')){const halves=s.split('::');if(halves.length!==2)throw Error(':: \u306f 1 \u56de\u3060\u3051\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002');const l=halves[0]?halves[0].split(':'):[],r=halves[1]?halves[1].split(':'):[];if(l.length+r.length>=8)throw Error(':: \u306f 1 \u7d44\u4ee5\u4e0a\u306e 0 \u3092\u7701\u7565\u3057\u307e\u3059\u3002');parts=[...l,...Array(8-l.length-r.length).fill('0'),...r];}else parts=s.split(':');\n if(parts.length!==8||parts.some(v=>! \/^[0-9a-f]{1,4}$\/i.test(v)))throw Error('IPv6 \u306f 1\u301c4 \u6841\u306e 16 \u9032\u6570\u3092 8 \u7d44\uff08\u7701\u7565\u306b\u306f ::\uff09\u3067\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002');return parts.reduce((n,v)=>(n<<16n)|BigInt(parseInt(v,16)),0n);}\n function full(n){return n.toString(16).padStart(32,'0').match(\/.{4}\/g).join(':');}\n function canonical(n){const a=full(n).split(':').map(v=>parseInt(v,16).toString(16));let start=-1,len=1;for(let i=0;i<8;){if(a[i]!=='0'){i++;continue;}let j=i;while(j<8&&a[j]==='0')j++;if(j-i>len){start=i;len=j-i;}i=j;}return start<0?a.join(':'):a.slice(0,start).join(':')+'::'+a.slice(start+len).join(':');}\n function calculate(input,p){const a=input.trim().split('\/');if(a.length>2)throw Error('\/ \u306f 1 \u3064\u3060\u3051\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002');const address=parse(a[0]);p=prefix(a.length===2?a[1]:p);const size=1n<<BigInt(128-p),mask=MAX^(size-1n),network=address&mask,last=network+size-1n;return {address:canonical(address),addressFull:full(address),prefix:p,network:canonical(network),networkFull:full(network),first:canonical(network),last:canonical(last),mask:full(mask),total:size.toString(),hostBits:128-p,addressBinary:address.toString(2).padStart(128,'0'),networkBinary:network.toString(2).padStart(128,'0'),maskBinary:mask.toString(2).padStart(128,'0')};}\n function subdivide(result,target,limit=64){target=prefix(target);if(target<result.prefix)throw Error('\u5206\u5272\u5148\u306f\u5143\u306e\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ee5\u4e0a\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002');if(!Number.isInteger(limit)||limit<1||limit>256)throw Error('\u8868\u793a\u4e0a\u9650\u306f 1\u301c256 \u3067\u3059\u3002');const count=1n<<BigInt(target-result.prefix),size=1n<<BigInt(128-target),n=parse(result.network),shown=Number(count<BigInt(limit)?count:BigInt(limit));return {target,count:count.toString(),perSubnet:size.toString(),rows:Array.from({length:shown},(_,i)=>canonical(n+BigInt(i)*size)+'\/'+target),last:canonical(n+(count-1n)*size)+'\/'+target};}\n return {parse,prefix,full,canonical,calculate,subdivide};\n})();\n\nconst $=id=>root.getElementById(id);let result=null;const fmt=s=>BigInt(s).toLocaleString('ja-JP');\nfunction clearSplit(){$('split-result').replaceChildren();$('split-error').hidden=true;$('target').removeAttribute('aria-invalid');}\nfunction dirty(){result=null;$('copy').disabled=true;$('split').disabled=true;$('result-body').classList.add('stale');$('status').textContent='\u5165\u529b\u3092\u5909\u66f4\u3057\u307e\u3057\u305f\u3002\u300c\u30b5\u30d6\u30cd\u30c3\u30c8\u3092\u8a08\u7b97\u300d\u3067\u66f4\u65b0\u3057\u3066\u304f\u3060\u3055\u3044\u3002';$('binary').replaceChildren();$('copy-fallback')?.remove();clearSplit();}\nfunction render(){clearSplit();$('copy-fallback')?.remove();try{result=IPv6.calculate($('ip').value,$('mask').value);const r=result;$('error').hidden=true;for(const id of ['ip','mask'])$(id).removeAttribute('aria-invalid');$('result-body').classList.remove('stale');$('copy').disabled=false;$('split').disabled=false;$('status').textContent='';for(const [id,v] of Object.entries({'result-tag':'\/'+r.prefix,total:fmt(r.total),hostbits:r.hostBits,address:r.address,full:r.networkFull,netmask:r.mask,first:r.first,last:r.last}))$(id).textContent=v;\nconst cidr=document.createElement('span');cidr.className='cidr-prefix';cidr.textContent='\/'+r.prefix;$('network').replaceChildren(document.createTextNode(r.network),cidr);\n$('binary').replaceChildren();for(const [label,bits] of [['IPv6 \u30a2\u30c9\u30ec\u30b9',r.addressBinary],['\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u30de\u30b9\u30af',r.maskBinary],['\u30cd\u30c3\u30c8\u30ef\u30fc\u30af',r.networkBinary]]){const row=document.createElement('div');row.className='binary-row';const name=document.createElement('span');name.textContent=label;row.append(name);const block=document.createElement('div');block.className='bits';for(let i=0;i<128;i++){const b=document.createElement('span');b.textContent=bits[i]+(i%16===15?' ':'');b.className=i<r.prefix?'':'host-bit';block.append(b);}row.append(block);$('binary').append(row);}\nroot.querySelectorAll('[data-prefix]').forEach(b=>{const active=Number(b.dataset.prefix)===r.prefix;b.classList.toggle('active',active);b.setAttribute('aria-pressed',String(active));});\n}catch(e){dirty();$('error').textContent=e.message;$('error').hidden=false;$('status').textContent='\u5165\u529b\u3092\u4fee\u6b63\u3057\u3066\u3001\u3082\u3046\u4e00\u5ea6\u8a08\u7b97\u3057\u3066\u304f\u3060\u3055\u3044\u3002';for(const id of ['ip','mask'])$(id).setAttribute('aria-invalid','true');}}\nfunction setPrefix(p){$('ip').value=$('ip').value.trim().split('\/')[0];$('mask').value='\/'+p;render();}\n$('form').addEventListener('submit',e=>{e.preventDefault();render();if(result)$('status').textContent='\u8a08\u7b97\u3057\u307e\u3057\u305f\u3002';});root.querySelectorAll('[data-prefix]').forEach(b=>b.addEventListener('click',()=>setPrefix(b.dataset.prefix)));for(const id of ['ip','mask'])$(id).addEventListener('input',dirty);\n$('target').addEventListener('input',clearSplit);$('split-form').addEventListener('submit',e=>{e.preventDefault();clearSplit();if(!result)return;try{const s=IPv6.subdivide(result,$('target').value);const p=document.createElement('p');p.textContent=`\/${result.prefix} \u2192 \/${s.target}\uff1a${fmt(s.count)} \u30b5\u30d6\u30cd\u30c3\u30c8\uff08\u5404 ${fmt(s.perSubnet)} \u30a2\u30c9\u30ec\u30b9\uff09\u3002\u5148\u982d ${s.rows.length} \u4ef6\u3092\u8868\u793a\u3002`;$('split-result').append(p);const ol=document.createElement('ol');ol.className='subnets';for(const value of s.rows){const li=document.createElement('li');li.textContent=value;ol.append(li);}$('split-result').append(ol);const last=document.createElement('p');last.textContent='\u6700\u5f8c\u306e\u30b5\u30d6\u30cd\u30c3\u30c8\uff1a'+s.last;$('split-result').append(last);}catch(e){$('split-error').hidden=false;$('split-error').textContent=e.message;$('target').setAttribute('aria-invalid','true');}});\nfor(const p of [48,56,64,96,120,127,128]){const r=IPv6.calculate('::',p),tr=document.createElement('tr'),td=document.createElement('td'),b=document.createElement('button');b.type='button';b.textContent='\/'+p;b.onclick=()=>setPrefix(p);td.append(b);tr.append(td);for(const v of [r.hostBits+' bits','2^'+r.hostBits]){const c=document.createElement('td');c.textContent=v;tr.append(c);}$('reference').append(tr);}\nfunction summary(r){return ['IPv6 \u30b5\u30d6\u30cd\u30c3\u30c8\u8a08\u7b97',`\u5165\u529b: ${r.address}\/${r.prefix}`,`\u30cd\u30c3\u30c8\u30ef\u30fc\u30af: ${r.network}\/${r.prefix}`,`\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\uff08\u7701\u7565\u306a\u3057\uff09: ${r.networkFull}`,`\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u30de\u30b9\u30af: ${r.mask}`,`\u7bc4\u56f2\u306e\u5148\u982d: ${r.first}`,`\u7bc4\u56f2\u306e\u672b\u5c3e: ${r.last}`,`\u7dcf\u30a2\u30c9\u30ec\u30b9\u6570: ${r.total}`,`\u30db\u30b9\u30c8\u90e8: ${r.hostBits} bits`,'IPv6 \u306b\u30d6\u30ed\u30fc\u30c9\u30ad\u30e3\u30b9\u30c8\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u7dcf\u6570\u306f\u5272\u308a\u5f53\u3066\u53ef\u80fd\u306a\u30db\u30b9\u30c8\u6570\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002'].join('\\n');}\n$('copy').addEventListener('click',async()=>{if(!result)return;const current=result,value=summary(result);try{await navigator.clipboard.writeText(value);if(result===current)$('status').textContent='\u8a08\u7b97\u7d50\u679c\u3092\u30b3\u30d4\u30fc\u3057\u307e\u3057\u305f\u3002';}catch{if(result!==current)return;$('status').textContent='\u81ea\u52d5\u30b3\u30d4\u30fc\u304c\u4f7f\u3048\u307e\u305b\u3093\u3002\u4e0b\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u9078\u629e\u3057\u3066\u30b3\u30d4\u30fc\u3057\u3066\u304f\u3060\u3055\u3044\u3002';let area=$('copy-fallback');if(!area){area=document.createElement('textarea');area.id='copy-fallback';area.setAttribute('aria-label','\u30b3\u30d4\u30fc\u7528\u306e\u8a08\u7b97\u7d50\u679c');area.style.cssText='width:100%;min-height:220px;margin:12px 0;font:12px monospace';$('status').after(area);}area.value=value;area.focus();area.select();}});render();\n\n})();\n\n\/\/ -->\n<\/script>\n\n\n\n<style>\/* Page-scoped title fit and below-tool navigation *\/body.page-id-13 .wp-block-post-title{max-width:1100px!important;width:100%;font-size:clamp(18px,3.1vw,36px);line-height:1.3;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}body.page-id-13 #bfl-below-tool-nav{max-width:1100px!important;box-sizing:border-box;margin:40px auto 0;padding:24px 0;border-top:1px solid #dce5e8}body.page-id-13 #bfl-below-tool-nav>nav{justify-content:center}<\/style>\n<div id=\"bfl-below-tool-nav\"><\/div>\n<script>\n<!--\n(function(){var nav=document.querySelector(\"body.page-id-13 > .wp-site-blocks > header nav.wp-block-navigation\"),slot=document.getElementById(\"bfl-below-tool-nav\");if(nav&&slot)slot.appendChild(nav);})();\n\/\/ -->\n<\/script>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-13","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/tools.bl-forest.com\/index.php?rest_route=\/wp\/v2\/pages\/13","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tools.bl-forest.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/tools.bl-forest.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/tools.bl-forest.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tools.bl-forest.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=13"}],"version-history":[{"count":4,"href":"https:\/\/tools.bl-forest.com\/index.php?rest_route=\/wp\/v2\/pages\/13\/revisions"}],"predecessor-version":[{"id":105,"href":"https:\/\/tools.bl-forest.com\/index.php?rest_route=\/wp\/v2\/pages\/13\/revisions\/105"}],"wp:attachment":[{"href":"https:\/\/tools.bl-forest.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=13"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}