|
| 1 | +<!DOCTYPE html> |
| 2 | +<html lang="en" dir="auto" data-theme="auto"> |
| 3 | + |
| 4 | +<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8"> |
| 5 | +<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
| 6 | +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> |
| 7 | +<meta name="robots" content="noindex, nofollow"> |
| 8 | +<title>Network | My SRE Knowledge Library</title> |
| 9 | +<meta name="keywords" content=""> |
| 10 | +<meta name="description" content=""> |
| 11 | +<meta name="author" content=""> |
| 12 | +<link rel="canonical" href="http://localhost:1313/categories/network/"> |
| 13 | +<link crossorigin="anonymous" href="/assets/css/stylesheet.9e010bc22ef5794c0560b82f657f315607f24d8b05e0088e95b900c22246f5c0.css" integrity="sha256-ngELwi71eUwFYLgvZX8xVgfyTYsF4AiOlbkAwiJG9cA=" rel="preload stylesheet" as="style"> |
| 14 | +<link rel="icon" href="http://localhost:1313/favicon.ico"> |
| 15 | +<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png"> |
| 16 | +<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png"> |
| 17 | +<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png"> |
| 18 | +<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg"> |
| 19 | +<meta name="theme-color" content="#2e2e33"> |
| 20 | +<meta name="msapplication-TileColor" content="#2e2e33"> |
| 21 | +<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/categories/network/index.xml" title="rss"> |
| 22 | +<link rel="alternate" hreflang="en" href="http://localhost:1313/categories/network/"> |
| 23 | +<noscript> |
| 24 | + <style> |
| 25 | + #theme-toggle, |
| 26 | + .top-link { |
| 27 | + display: none; |
| 28 | + } |
| 29 | + |
| 30 | + </style> |
| 31 | + <style> |
| 32 | + @media (prefers-color-scheme: dark) { |
| 33 | + :root { |
| 34 | + --theme: rgb(29, 30, 32); |
| 35 | + --entry: rgb(46, 46, 51); |
| 36 | + --primary: rgb(218, 218, 219); |
| 37 | + --secondary: rgb(155, 156, 157); |
| 38 | + --tertiary: rgb(65, 66, 68); |
| 39 | + --content: rgb(196, 196, 197); |
| 40 | + --code-block-bg: rgb(46, 46, 51); |
| 41 | + --code-bg: rgb(55, 56, 62); |
| 42 | + --border: rgb(51, 51, 51); |
| 43 | + color-scheme: dark; |
| 44 | + } |
| 45 | + |
| 46 | + .list { |
| 47 | + background: var(--theme); |
| 48 | + } |
| 49 | + |
| 50 | + .toc { |
| 51 | + background: var(--entry); |
| 52 | + } |
| 53 | + } |
| 54 | + |
| 55 | + </style> |
| 56 | +</noscript> |
| 57 | +<script> |
| 58 | + if (localStorage.getItem("pref-theme") === "dark") { |
| 59 | + document.querySelector("html").dataset.theme = 'dark'; |
| 60 | + } else if (localStorage.getItem("pref-theme") === "light") { |
| 61 | + document.querySelector("html").dataset.theme = 'light'; |
| 62 | + } else if (window.matchMedia('(prefers-color-scheme: dark)').matches) { |
| 63 | + document.querySelector("html").dataset.theme = 'dark'; |
| 64 | + } else { |
| 65 | + document.querySelector("html").dataset.theme = 'light'; |
| 66 | + } |
| 67 | + |
| 68 | +</script> |
| 69 | +</head> |
| 70 | +<body class="list" id="top"> |
| 71 | + <header class="header"> |
| 72 | + <nav class="header-nav"> |
| 73 | + <div class="logo"> |
| 74 | + <a href="http://localhost:1313/" accesskey="h" title="My SRE Knowledge Library (Alt + H)">My SRE Knowledge Library</a> |
| 75 | + <div class="logo-switches"> |
| 76 | + <button id="theme-toggle" class="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme"> |
| 77 | + <svg class="moon" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" |
| 78 | + fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" |
| 79 | + stroke-linejoin="round"> |
| 80 | + <path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path> |
| 81 | + </svg> |
| 82 | + <svg class="sun" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" |
| 83 | + fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" |
| 84 | + stroke-linejoin="round"> |
| 85 | + <circle cx="12" cy="12" r="5"></circle> |
| 86 | + <line x1="12" y1="1" x2="12" y2="3"></line> |
| 87 | + <line x1="12" y1="21" x2="12" y2="23"></line> |
| 88 | + <line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line> |
| 89 | + <line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line> |
| 90 | + <line x1="1" y1="12" x2="3" y2="12"></line> |
| 91 | + <line x1="21" y1="12" x2="23" y2="12"></line> |
| 92 | + <line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line> |
| 93 | + <line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line> |
| 94 | + </svg> |
| 95 | + </button> |
| 96 | + </div> |
| 97 | + </div> |
| 98 | + <ul id="menu" class="menu"> |
| 99 | + <li> |
| 100 | + <a href="http://localhost:1313/" title="首页"> |
| 101 | + <span>首页</span> |
| 102 | + </a> |
| 103 | + </li> |
| 104 | + <li> |
| 105 | + <a href="http://localhost:1313/categories/" title="分类"> |
| 106 | + <span>分类</span> |
| 107 | + </a> |
| 108 | + </li> |
| 109 | + <li> |
| 110 | + <a href="http://localhost:1313/tags/" title="标签"> |
| 111 | + <span>标签</span> |
| 112 | + </a> |
| 113 | + </li> |
| 114 | + </ul> |
| 115 | + </nav> |
| 116 | +</header> |
| 117 | +<main class="main"> |
| 118 | +<header class="page-header"> |
| 119 | + <h1> |
| 120 | + Network |
| 121 | + </h1> |
| 122 | +</header> |
| 123 | + |
| 124 | +<article class="post-entry tag-entry"> |
| 125 | + <header class="entry-header"> |
| 126 | + <h2 class="entry-hint-parent">网络工程师 |
| 127 | + </h2> |
| 128 | + </header> |
| 129 | + <div class="entry-content"> |
| 130 | + <p></p> |
| 131 | + </div> |
| 132 | + <footer class="entry-footer"><span title='2026-05-03 20:00:00 +0800 CST'>May 3, 2026</span> · <span>0 min</span> · <span>0 words</span></footer> |
| 133 | + <a class="entry-link" aria-label="post link to 网络工程师" href="http://localhost:1313/posts/%E7%BD%91%E7%BB%9C%E5%B7%A5%E7%A8%8B%E5%B8%88/"></a> |
| 134 | +</article> |
| 135 | + </main> |
| 136 | + |
| 137 | +<footer class="footer"> |
| 138 | + <span>© 2026 <a href="http://localhost:1313/">My SRE Knowledge Library</a></span> · |
| 139 | + |
| 140 | + <span> |
| 141 | + Powered by |
| 142 | + <a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> & |
| 143 | + <a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a> |
| 144 | + </span> |
| 145 | +</footer> |
| 146 | +<a href="#top" id="top-link" class="top-link hidden" aria-label="go to top" title="Go to Top (Alt + G)" accesskey="g"> |
| 147 | + <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" |
| 148 | + stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevrons-up"> |
| 149 | + <polyline points="17 11 12 6 7 11"></polyline> |
| 150 | + <polyline points="17 18 12 13 7 18"></polyline> |
| 151 | + </svg> |
| 152 | +</a> |
| 153 | + |
| 154 | +<script> |
| 155 | + let menu = document.getElementById('menu'); |
| 156 | + if (menu) { |
| 157 | + |
| 158 | + const scrollPosition = localStorage.getItem("menu-scroll-position"); |
| 159 | + if (scrollPosition) { |
| 160 | + menu.scrollLeft = parseInt(scrollPosition, 10); |
| 161 | + } |
| 162 | + |
| 163 | + menu.onscroll = function () { |
| 164 | + localStorage.setItem("menu-scroll-position", menu.scrollLeft); |
| 165 | + } |
| 166 | + } |
| 167 | + |
| 168 | + document.querySelectorAll('a[href^="#"]').forEach(anchor => { |
| 169 | + anchor.addEventListener("click", function (e) { |
| 170 | + e.preventDefault(); |
| 171 | + var id = this.getAttribute("href").substr(1); |
| 172 | + if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) { |
| 173 | + document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({ |
| 174 | + behavior: "smooth" |
| 175 | + }); |
| 176 | + } else { |
| 177 | + document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView(); |
| 178 | + } |
| 179 | + if (id === "top") { |
| 180 | + history.replaceState(null, null, " "); |
| 181 | + } else { |
| 182 | + history.pushState(null, null, `#${id}`); |
| 183 | + } |
| 184 | + }); |
| 185 | + }); |
| 186 | + |
| 187 | +</script> |
| 188 | +<script> |
| 189 | + var toplink = document.getElementById("top-link"); |
| 190 | + window.onscroll = function () { |
| 191 | + const scrollThreshold = window.innerHeight; |
| 192 | + if (document.body.scrollTop > scrollThreshold || document.documentElement.scrollTop > scrollThreshold) { |
| 193 | + toplink.classList.remove("hidden"); |
| 194 | + } else { |
| 195 | + toplink.classList.add("hidden"); |
| 196 | + } |
| 197 | + }; |
| 198 | + |
| 199 | +</script> |
| 200 | +<script> |
| 201 | + document.getElementById("theme-toggle").addEventListener("click", () => { |
| 202 | + const html = document.querySelector("html"); |
| 203 | + if (html.dataset.theme === "dark") { |
| 204 | + html.dataset.theme = 'light'; |
| 205 | + localStorage.setItem("pref-theme", 'light'); |
| 206 | + } else { |
| 207 | + html.dataset.theme = 'dark'; |
| 208 | + localStorage.setItem("pref-theme", 'dark'); |
| 209 | + } |
| 210 | + }) |
| 211 | + |
| 212 | +</script> |
| 213 | +</body> |
| 214 | + |
| 215 | +</html> |
0 commit comments