[{"data":1,"prerenderedAt":1112},["ShallowReactive",2],{"doc-page:\u002Fdocs\u002Fnetwork-tools":3},{"doc":4,"prev":1072,"next":1078,"resolvedType":8,"readingMinutes":159,"audience":1085,"checklist":1089,"related":1093},{"path":5,"title":6,"description":7,"docType":8,"resourceKind":9,"categoryId":10,"categoryLabel":11,"updatedAt":12,"publishedAt":12,"icon":13,"body":14},"\u002Fdocs\u002Fnetwork-tools","网络诊断工具","ping、traceroute、nslookup、tcpdump、Wireshark 等网络排查工具","article",null,"network-security","网络与安全","2026-02-28","i-carbon-network-4",{"type":15,"value":16,"toc":1044},"minimark",[17,20,24,28,44,47,111,114,117,170,175,179,233,241,245,319,322,326,415,420,424,489,492,495,497,604,607,611,614,626,629,637,640,643,646,740,745,748,842,846,936,939,942,964,967,975,979,990,993,997,1000,1004,1007,1010,1040],[18,19,6],"h1",{"id":6},[21,22,23],"p",{},"网络排障最怕“命令全会一点，但不知道先跑哪个”。更高效的方式是先判断问题大概落在哪一层：DNS、路由、端口、TLS、应用响应，接着再挑对应工具。",[25,26,27],"h2",{"id":27},"推荐排障顺序",[29,30,31,35,38,41],"ol",{},[32,33,34],"li",{},"先看本机网络是否正常",[32,36,37],{},"再看域名是否解析正确",[32,39,40],{},"再看路由和端口是否可达",[32,42,43],{},"最后再看 TLS、HTTP 响应和抓包细节",[25,45,46],{"id":46},"先按问题选工具",[48,49,50,68,79,93,102],"ul",{},[32,51,52,56,57,61,62,61,65],{},[53,54,55],"strong",{},"连不通","：",[58,59,60],"code",{},"ping","、",[58,63,64],{},"tracert",[58,66,67],{},"mtr",[32,69,70,56,73,61,76],{},[53,71,72],{},"域名异常",[58,74,75],{},"nslookup",[58,77,78],{},"dig",[32,80,81,56,84,61,87,61,90],{},[53,82,83],{},"端口 \u002F 服务不通",[58,85,86],{},"Test-NetConnection",[58,88,89],{},"ss",[58,91,92],{},"netstat",[32,94,95,56,98,101],{},[53,96,97],{},"HTTPS \u002F 响应慢",[58,99,100],{},"curl -vI","、响应时间测试",[32,103,104,56,107,110],{},[53,105,106],{},"要看底层流量",[58,108,109],{},"tcpdump","、Wireshark",[25,112,113],{"id":113},"基础命令",[115,116,60],"h3",{"id":60},[118,119,124],"pre",{"className":120,"code":121,"language":122,"meta":123,"style":123},"language-bash shiki shiki-themes github-light github-dark","ping example.com\nping -c 4 example.com         # 发送 4 次\nping -t example.com            # Windows 持续 ping\n","bash","",[58,125,126,138,157],{"__ignoreMap":123},[127,128,131,134],"span",{"class":129,"line":130},"line",1,[127,132,60],{"class":133},"sScJk",[127,135,137],{"class":136},"sZZnC"," example.com\n",[127,139,141,143,147,150,153],{"class":129,"line":140},2,[127,142,60],{"class":133},[127,144,146],{"class":145},"sj4cs"," -c",[127,148,149],{"class":145}," 4",[127,151,152],{"class":136}," example.com",[127,154,156],{"class":155},"sJ8bj","         # 发送 4 次\n",[127,158,160,162,165,167],{"class":129,"line":159},3,[127,161,60],{"class":133},[127,163,164],{"class":145}," -t",[127,166,152],{"class":136},[127,168,169],{"class":155},"            # Windows 持续 ping\n",[21,171,172,174],{},[58,173,60],{}," 适合先看基础连通性和延迟趋势，但目标主机禁 ICMP 时，ping 不通不代表网站一定不可用。",[115,176,178],{"id":177},"traceroute-tracert","traceroute \u002F tracert",[118,180,182],{"className":120,"code":181,"language":122,"meta":123,"style":123},"# Linux\u002FmacOS\ntraceroute example.com\n\n# Windows\ntracert example.com\n\n# 更好的替代：mtr\nmtr example.com\n",[58,183,184,189,196,202,208,215,220,226],{"__ignoreMap":123},[127,185,186],{"class":129,"line":130},[127,187,188],{"class":155},"# Linux\u002FmacOS\n",[127,190,191,194],{"class":129,"line":140},[127,192,193],{"class":133},"traceroute",[127,195,137],{"class":136},[127,197,198],{"class":129,"line":159},[127,199,201],{"emptyLinePlaceholder":200},true,"\n",[127,203,205],{"class":129,"line":204},4,[127,206,207],{"class":155},"# Windows\n",[127,209,211,213],{"class":129,"line":210},5,[127,212,64],{"class":133},[127,214,137],{"class":136},[127,216,218],{"class":129,"line":217},6,[127,219,201],{"emptyLinePlaceholder":200},[127,221,223],{"class":129,"line":222},7,[127,224,225],{"class":155},"# 更好的替代：mtr\n",[127,227,229,231],{"class":129,"line":228},8,[127,230,67],{"class":133},[127,232,137],{"class":136},[21,234,235,237,238,240],{},[58,236,67],{}," 比单纯的 ",[58,239,193],{}," 更适合持续观察丢包和波动。",[115,242,244],{"id":243},"nslookup-dig","nslookup \u002F dig",[118,246,248],{"className":120,"code":247,"language":122,"meta":123,"style":123},"# DNS 查询\nnslookup example.com\nnslookup -type=MX example.com\n\n# dig（更详细）\ndig example.com\ndig example.com MX\ndig @8.8.8.8 example.com      # 指定 DNS 服务器\ndig +short example.com         # 简洁输出\n",[58,249,250,255,261,270,274,279,285,294,306],{"__ignoreMap":123},[127,251,252],{"class":129,"line":130},[127,253,254],{"class":155},"# DNS 查询\n",[127,256,257,259],{"class":129,"line":140},[127,258,75],{"class":133},[127,260,137],{"class":136},[127,262,263,265,268],{"class":129,"line":159},[127,264,75],{"class":133},[127,266,267],{"class":145}," -type=MX",[127,269,137],{"class":136},[127,271,272],{"class":129,"line":204},[127,273,201],{"emptyLinePlaceholder":200},[127,275,276],{"class":129,"line":210},[127,277,278],{"class":155},"# dig（更详细）\n",[127,280,281,283],{"class":129,"line":217},[127,282,78],{"class":133},[127,284,137],{"class":136},[127,286,287,289,291],{"class":129,"line":222},[127,288,78],{"class":133},[127,290,152],{"class":136},[127,292,293],{"class":136}," MX\n",[127,295,296,298,301,303],{"class":129,"line":228},[127,297,78],{"class":133},[127,299,300],{"class":136}," @8.8.8.8",[127,302,152],{"class":136},[127,304,305],{"class":155},"      # 指定 DNS 服务器\n",[127,307,309,311,314,316],{"class":129,"line":308},9,[127,310,78],{"class":133},[127,312,313],{"class":136}," +short",[127,315,152],{"class":136},[127,317,318],{"class":155},"         # 简洁输出\n",[21,320,321],{},"DNS 问题最常见的不是“完全解析失败”，而是解析到错误 IP、旧记录或地区差异结果。",[115,323,325],{"id":324},"curl-诊断","curl 诊断",[118,327,329],{"className":120,"code":328,"language":122,"meta":123,"style":123},"# 查看响应时间\ncurl -o \u002Fdev\u002Fnull -s -w \"DNS: %{time_namelookup}s\\nConnect: %{time_connect}s\\nTTFB: %{time_starttransfer}s\\nTotal: %{time_total}s\\n\" https:\u002F\u002Fexample.com\n\n# 查看 TLS 信息\ncurl -vI https:\u002F\u002Fexample.com 2>&1 | grep -E \"SSL|subject|expire\"\n\n# 测试 HTTP\u002F2\ncurl -I --http2 https:\u002F\u002Fexample.com\n",[58,330,331,336,359,363,368,394,398,403],{"__ignoreMap":123},[127,332,333],{"class":129,"line":130},[127,334,335],{"class":155},"# 查看响应时间\n",[127,337,338,341,344,347,350,353,356],{"class":129,"line":140},[127,339,340],{"class":133},"curl",[127,342,343],{"class":145}," -o",[127,345,346],{"class":136}," \u002Fdev\u002Fnull",[127,348,349],{"class":145}," -s",[127,351,352],{"class":145}," -w",[127,354,355],{"class":136}," \"DNS: %{time_namelookup}s\\nConnect: %{time_connect}s\\nTTFB: %{time_starttransfer}s\\nTotal: %{time_total}s\\n\"",[127,357,358],{"class":136}," https:\u002F\u002Fexample.com\n",[127,360,361],{"class":129,"line":159},[127,362,201],{"emptyLinePlaceholder":200},[127,364,365],{"class":129,"line":204},[127,366,367],{"class":155},"# 查看 TLS 信息\n",[127,369,370,372,375,378,382,385,388,391],{"class":129,"line":210},[127,371,340],{"class":133},[127,373,374],{"class":145}," -vI",[127,376,377],{"class":136}," https:\u002F\u002Fexample.com",[127,379,381],{"class":380},"szBVR"," 2>&1",[127,383,384],{"class":380}," |",[127,386,387],{"class":133}," grep",[127,389,390],{"class":145}," -E",[127,392,393],{"class":136}," \"SSL|subject|expire\"\n",[127,395,396],{"class":129,"line":217},[127,397,201],{"emptyLinePlaceholder":200},[127,399,400],{"class":129,"line":222},[127,401,402],{"class":155},"# 测试 HTTP\u002F2\n",[127,404,405,407,410,413],{"class":129,"line":228},[127,406,340],{"class":133},[127,408,409],{"class":145}," -I",[127,411,412],{"class":145}," --http2",[127,414,358],{"class":136},[21,416,417,419],{},[58,418,340],{}," 非常适合判断“是网络问题，还是应用层响应问题”。",[115,421,423],{"id":422},"ss-netstat","ss \u002F netstat",[118,425,427],{"className":120,"code":426,"language":122,"meta":123,"style":123},"# 查看监听端口\nss -tlnp\nnetstat -tlnp                  # 旧版\n\n# 查看所有连接\nss -tanp\n\n# 查看特定端口\nss -tlnp | grep :80\n",[58,428,429,434,441,451,455,460,467,471,476],{"__ignoreMap":123},[127,430,431],{"class":129,"line":130},[127,432,433],{"class":155},"# 查看监听端口\n",[127,435,436,438],{"class":129,"line":140},[127,437,89],{"class":133},[127,439,440],{"class":145}," -tlnp\n",[127,442,443,445,448],{"class":129,"line":159},[127,444,92],{"class":133},[127,446,447],{"class":145}," -tlnp",[127,449,450],{"class":155},"                  # 旧版\n",[127,452,453],{"class":129,"line":204},[127,454,201],{"emptyLinePlaceholder":200},[127,456,457],{"class":129,"line":210},[127,458,459],{"class":155},"# 查看所有连接\n",[127,461,462,464],{"class":129,"line":217},[127,463,89],{"class":133},[127,465,466],{"class":145}," -tanp\n",[127,468,469],{"class":129,"line":222},[127,470,201],{"emptyLinePlaceholder":200},[127,472,473],{"class":129,"line":228},[127,474,475],{"class":155},"# 查看特定端口\n",[127,477,478,480,482,484,486],{"class":129,"line":308},[127,479,89],{"class":133},[127,481,447],{"class":145},[127,483,384],{"class":380},[127,485,387],{"class":133},[127,487,488],{"class":136}," :80\n",[21,490,491],{},"这组命令很适合本机服务启动后自检，尤其是 Nginx、Node、数据库和代理服务。",[25,493,494],{"id":494},"高级工具",[115,496,109],{"id":109},[118,498,500],{"className":120,"code":499,"language":122,"meta":123,"style":123},"# 抓取指定端口\ntcpdump -i eth0 port 80\n\n# 抓取指定主机\ntcpdump -i eth0 host 1.2.3.4\n\n# 保存到文件\ntcpdump -i eth0 -w capture.pcap\n\n# 只看 HTTP\ntcpdump -i eth0 -A port 80 | grep -E \"GET|POST|HTTP\"\n",[58,501,502,507,523,527,532,546,550,555,568,572,578],{"__ignoreMap":123},[127,503,504],{"class":129,"line":130},[127,505,506],{"class":155},"# 抓取指定端口\n",[127,508,509,511,514,517,520],{"class":129,"line":140},[127,510,109],{"class":133},[127,512,513],{"class":145}," -i",[127,515,516],{"class":136}," eth0",[127,518,519],{"class":136}," port",[127,521,522],{"class":145}," 80\n",[127,524,525],{"class":129,"line":159},[127,526,201],{"emptyLinePlaceholder":200},[127,528,529],{"class":129,"line":204},[127,530,531],{"class":155},"# 抓取指定主机\n",[127,533,534,536,538,540,543],{"class":129,"line":210},[127,535,109],{"class":133},[127,537,513],{"class":145},[127,539,516],{"class":136},[127,541,542],{"class":136}," host",[127,544,545],{"class":145}," 1.2.3.4\n",[127,547,548],{"class":129,"line":217},[127,549,201],{"emptyLinePlaceholder":200},[127,551,552],{"class":129,"line":222},[127,553,554],{"class":155},"# 保存到文件\n",[127,556,557,559,561,563,565],{"class":129,"line":228},[127,558,109],{"class":133},[127,560,513],{"class":145},[127,562,516],{"class":136},[127,564,352],{"class":145},[127,566,567],{"class":136}," capture.pcap\n",[127,569,570],{"class":129,"line":308},[127,571,201],{"emptyLinePlaceholder":200},[127,573,575],{"class":129,"line":574},10,[127,576,577],{"class":155},"# 只看 HTTP\n",[127,579,581,583,585,587,590,592,595,597,599,601],{"class":129,"line":580},11,[127,582,109],{"class":133},[127,584,513],{"class":145},[127,586,516],{"class":136},[127,588,589],{"class":145}," -A",[127,591,519],{"class":136},[127,593,594],{"class":145}," 80",[127,596,384],{"class":380},[127,598,387],{"class":133},[127,600,390],{"class":145},[127,602,603],{"class":136}," \"GET|POST|HTTP\"\n",[21,605,606],{},"抓包前先缩小范围：主机、端口、协议尽量先限定，否则信息量会大到难以分析。",[115,608,610],{"id":609},"wireshark","Wireshark",[21,612,613],{},"图形化抓包分析工具。",[118,615,619],{"className":616,"code":617,"language":618,"meta":123,"style":123},"language-powershell shiki shiki-themes github-light github-dark","winget install WiresharkFoundation.Wireshark\n","powershell",[58,620,621],{"__ignoreMap":123},[127,622,623],{"class":129,"line":130},[127,624,617],{"class":625},"sVt8B",[21,627,628],{},"常用过滤器：",[118,630,635],{"className":631,"code":633,"language":634},[632],"language-text","http                           # HTTP 流量\ntcp.port == 443                # HTTPS 端口\nip.addr == 1.2.3.4            # 指定 IP\ndns                            # DNS 查询\ntcp.flags.syn == 1             # SYN 包\nhttp.request.method == \"POST\"  # POST 请求\n","text",[58,636,633],{"__ignoreMap":123},[21,638,639],{},"Wireshark 适合做“我知道有问题，但不知道到底在哪里”的深入分析。",[115,641,642],{"id":642},"nmap",[21,644,645],{},"端口扫描工具。",[118,647,649],{"className":120,"code":648,"language":122,"meta":123,"style":123},"# 扫描常用端口\nnmap example.com\n\n# 扫描指定端口\nnmap -p 80,443,8080 example.com\n\n# 扫描所有端口\nnmap -p- example.com\n\n# 服务版本检测\nnmap -sV example.com\n\n# 操作系统检测\nnmap -O example.com\n",[58,650,651,656,662,666,671,683,687,692,701,705,710,719,724,730],{"__ignoreMap":123},[127,652,653],{"class":129,"line":130},[127,654,655],{"class":155},"# 扫描常用端口\n",[127,657,658,660],{"class":129,"line":140},[127,659,642],{"class":133},[127,661,137],{"class":136},[127,663,664],{"class":129,"line":159},[127,665,201],{"emptyLinePlaceholder":200},[127,667,668],{"class":129,"line":204},[127,669,670],{"class":155},"# 扫描指定端口\n",[127,672,673,675,678,681],{"class":129,"line":210},[127,674,642],{"class":133},[127,676,677],{"class":145}," -p",[127,679,680],{"class":136}," 80,443,8080",[127,682,137],{"class":136},[127,684,685],{"class":129,"line":217},[127,686,201],{"emptyLinePlaceholder":200},[127,688,689],{"class":129,"line":222},[127,690,691],{"class":155},"# 扫描所有端口\n",[127,693,694,696,699],{"class":129,"line":228},[127,695,642],{"class":133},[127,697,698],{"class":145}," -p-",[127,700,137],{"class":136},[127,702,703],{"class":129,"line":308},[127,704,201],{"emptyLinePlaceholder":200},[127,706,707],{"class":129,"line":574},[127,708,709],{"class":155},"# 服务版本检测\n",[127,711,712,714,717],{"class":129,"line":580},[127,713,642],{"class":133},[127,715,716],{"class":145}," -sV",[127,718,137],{"class":136},[127,720,722],{"class":129,"line":721},12,[127,723,201],{"emptyLinePlaceholder":200},[127,725,727],{"class":129,"line":726},13,[127,728,729],{"class":155},"# 操作系统检测\n",[127,731,733,735,738],{"class":129,"line":732},14,[127,734,642],{"class":133},[127,736,737],{"class":145}," -O",[127,739,137],{"class":136},[21,741,742,744],{},[58,743,642],{}," 更适合资产扫描和服务识别；面对自己不控制的目标时，要先确认使用边界和合规性。",[25,746,747],{"id":747},"在线工具",[749,750,751,764],"table",{},[752,753,754],"thead",{},[755,756,757,761],"tr",{},[758,759,760],"th",{},"工具",[758,762,763],{},"说明",[765,766,767,782,794,806,818,830],"tbody",{},[755,768,769,779],{},[770,771,772],"td",{},[773,774,778],"a",{"href":775,"rel":776},"https:\u002F\u002Fping.pe\u002F",[777],"nofollow","ping.pe",[770,780,781],{},"全球多节点 ping",[755,783,784,791],{},[770,785,786],{},[773,787,790],{"href":788,"rel":789},"https:\u002F\u002Fdnschecker.org\u002F",[777],"DNS Checker",[770,792,793],{},"DNS 传播检查",[755,795,796,803],{},[770,797,798],{},[773,799,802],{"href":800,"rel":801},"https:\u002F\u002Fwww.ssllabs.com\u002Fssltest\u002F",[777],"SSL Labs",[770,804,805],{},"SSL 证书检测",[755,807,808,815],{},[770,809,810],{},[773,811,814],{"href":812,"rel":813},"https:\u002F\u002Fpagespeed.web.dev\u002F",[777],"PageSpeed",[770,816,817],{},"网站性能分析",[755,819,820,827],{},[770,821,822],{},[773,823,826],{"href":824,"rel":825},"https:\u002F\u002Fipinfo.io\u002F",[777],"ipinfo.io",[770,828,829],{},"IP 信息查询",[755,831,832,839],{},[770,833,834],{},[773,835,838],{"href":836,"rel":837},"https:\u002F\u002Fwww.whatismyip.com\u002F",[777],"whatismyip.com",[770,840,841],{},"查看公网 IP",[25,843,845],{"id":844},"powershell-网络命令","PowerShell 网络命令",[118,847,849],{"className":616,"code":848,"language":618,"meta":123,"style":123},"# DNS 查询\nResolve-DnsName example.com\nResolve-DnsName example.com -Type MX\n\n# 端口测试\nTest-NetConnection example.com -Port 443\n\n# 路由追踪\nTest-NetConnection example.com -TraceRoute\n\n# 查看网络配置\nGet-NetIPAddress\nGet-DnsClientServerAddress\n",[58,850,851,855,862,874,878,883,897,901,906,917,921,926,931],{"__ignoreMap":123},[127,852,853],{"class":129,"line":130},[127,854,254],{"class":155},[127,856,857,860],{"class":129,"line":140},[127,858,859],{"class":145},"Resolve-DnsName",[127,861,137],{"class":145},[127,863,864,866,868,871],{"class":129,"line":159},[127,865,859],{"class":145},[127,867,152],{"class":145},[127,869,870],{"class":380}," -",[127,872,873],{"class":625},"Type MX\n",[127,875,876],{"class":129,"line":204},[127,877,201],{"emptyLinePlaceholder":200},[127,879,880],{"class":129,"line":210},[127,881,882],{"class":155},"# 端口测试\n",[127,884,885,887,889,891,894],{"class":129,"line":217},[127,886,86],{"class":145},[127,888,152],{"class":145},[127,890,870],{"class":380},[127,892,893],{"class":625},"Port ",[127,895,896],{"class":145},"443\n",[127,898,899],{"class":129,"line":222},[127,900,201],{"emptyLinePlaceholder":200},[127,902,903],{"class":129,"line":228},[127,904,905],{"class":155},"# 路由追踪\n",[127,907,908,910,912,914],{"class":129,"line":308},[127,909,86],{"class":145},[127,911,152],{"class":145},[127,913,870],{"class":380},[127,915,916],{"class":625},"TraceRoute\n",[127,918,919],{"class":129,"line":574},[127,920,201],{"emptyLinePlaceholder":200},[127,922,923],{"class":129,"line":580},[127,924,925],{"class":155},"# 查看网络配置\n",[127,927,928],{"class":129,"line":721},[127,929,930],{"class":145},"Get-NetIPAddress\n",[127,932,933],{"class":129,"line":726},[127,934,935],{"class":145},"Get-DnsClientServerAddress\n",[25,937,938],{"id":938},"常见排障路径",[115,940,941],{"id":941},"网站打不开",[48,943,944,952,957],{},[32,945,946,947,949,950],{},"先 ",[58,948,75],{}," \u002F ",[58,951,78],{},[32,953,954,955],{},"再 ",[58,956,100],{},[32,958,954,959,961,962],{},[58,960,86],{}," 或 ",[58,963,64],{},[115,965,966],{"id":966},"域名刚改解析但还没生效",[48,968,969,972],{},[32,970,971],{},"看权威 DNS 和公共 DNS 返回是否一致",[32,973,974],{},"用 DNS Checker 做多地区验证",[115,976,978],{"id":977},"服务器应用起来了但外网访问不到","服务器应用起来了，但外网访问不到",[48,980,981,984,987],{},[32,982,983],{},"先看服务监听端口",[32,985,986],{},"再看防火墙 \u002F 安全组",[32,988,989],{},"最后看域名和反向代理",[25,991,992],{"id":992},"常见问题",[115,994,996],{"id":995},"ping-通但网页打不开","ping 通但网页打不开",[21,998,999],{},"这通常说明网络基础连通不一定有问题，故障更可能在端口、TLS、反向代理或应用服务本身。",[115,1001,1003],{"id":1002},"dns-看起来正常但访问还是不对","DNS 看起来正常，但访问还是不对",[21,1005,1006],{},"可能是 CDN、缓存、SNI、证书或上游服务分流导致的，别只盯着 DNS 一项。",[25,1008,1009],{"id":1009},"参考链接",[48,1011,1012,1019,1026,1033],{},[32,1013,1014,1018],{},[773,1015,642],{"href":1016,"rel":1017},"https:\u002F\u002Fnmap.org\u002F",[777]," — 端口扫描",[32,1020,1021,1025],{},[773,1022,610],{"href":1023,"rel":1024},"https:\u002F\u002Fwww.wireshark.org\u002F",[777]," — 抓包分析",[32,1027,1028,1032],{},[773,1029,67],{"href":1030,"rel":1031},"https:\u002F\u002Fgithub.com\u002Ftraviscross\u002Fmtr",[777]," — 网络诊断",[32,1034,1035,1039],{},[773,1036,1038],{"href":1037},"\u002Fdocs\u002Fnetwork-proxy","网络与代理工具"," — 如果问题更偏向代理、穿透和出口链路",[1041,1042,1043],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}",{"title":123,"searchDepth":140,"depth":140,"links":1045},[1046,1047,1048,1055,1060,1061,1062,1067,1071],{"id":27,"depth":140,"text":27},{"id":46,"depth":140,"text":46},{"id":113,"depth":140,"text":113,"children":1049},[1050,1051,1052,1053,1054],{"id":60,"depth":159,"text":60},{"id":177,"depth":159,"text":178},{"id":243,"depth":159,"text":244},{"id":324,"depth":159,"text":325},{"id":422,"depth":159,"text":423},{"id":494,"depth":140,"text":494,"children":1056},[1057,1058,1059],{"id":109,"depth":159,"text":109},{"id":609,"depth":159,"text":610},{"id":642,"depth":159,"text":642},{"id":747,"depth":140,"text":747},{"id":844,"depth":140,"text":845},{"id":938,"depth":140,"text":938,"children":1063},[1064,1065,1066],{"id":941,"depth":159,"text":941},{"id":966,"depth":159,"text":966},{"id":977,"depth":159,"text":978},{"id":992,"depth":140,"text":992,"children":1068},[1069,1070],{"id":995,"depth":159,"text":996},{"id":1002,"depth":159,"text":1003},{"id":1009,"depth":140,"text":1009},{"path":1073,"title":1074,"description":1075,"docType":8,"resourceKind":9,"categoryId":1076,"categoryLabel":747,"updatedAt":12,"publishedAt":12,"icon":1077},"\u002Fdocs\u002Fdesign-resources","设计资源与工具","配色工具、UI 组件库、设计灵感、免费素材与原型工具","online-tools","i-carbon-tool-box",{"path":1079,"title":1080,"description":1081,"docType":8,"resourceKind":9,"categoryId":1082,"categoryLabel":1083,"updatedAt":12,"publishedAt":12,"icon":1084},"\u002Fdocs\u002Fsystem-activation","系统镜像与激活","Windows\u002FOffice 镜像下载、KMS 激活、软件资源站汇总","windows-system","Windows 系统","i-mdi-microsoft-windows",[1086,1087,1088],"希望把零散经验整理成长期可复用工作流的人","需要处理网络链路或基础安全配置的人","希望阅读时顺手建立自己的操作清单或收藏体系的人",[1090,1091,1092],"先浏览标题、摘要和目录，带着问题阅读会更高效","确认当前网络拓扑、路由权限以及是否会影响其他设备访问","如果页面里提到相关文档，尽量一起打开对照，效果通常更完整",[1094,1099,1103,1108],{"path":1037,"title":1095,"description":1096,"docType":8,"resourceKind":9,"categoryId":10,"categoryLabel":11,"updatedAt":1097,"publishedAt":1098,"icon":13},"网络工具记录","内网穿透、网络诊断、网站测速与安全检查工具记录","2026-04-11","2025-10-11",{"path":1100,"title":1101,"description":1102,"docType":8,"resourceKind":9,"categoryId":10,"categoryLabel":11,"updatedAt":12,"publishedAt":12,"icon":13},"\u002Fdocs\u002Fwebauthn-passkeys","WebAuthn 与 Passkeys","无密码认证原理、Passkeys 实现、浏览器 API 与服务端集成",{"path":1104,"title":1105,"description":1106,"docType":8,"resourceKind":9,"categoryId":10,"categoryLabel":11,"updatedAt":1107,"publishedAt":1107,"icon":13},"\u002Fdocs\u002Fsecurity-hardening","服务器安全加固","SSH 安全、防火墙配置、fail2ban、自动更新与安全检查清单","2026-02-27",{"path":1109,"title":1110,"description":1111,"docType":8,"resourceKind":9,"categoryId":10,"categoryLabel":11,"updatedAt":1107,"publishedAt":1107,"icon":13},"\u002Fdocs\u002Fdns-hosts","DNS 与 Hosts 配置","DNS 服务器推荐、Hosts 文件编辑、DNS 加密与常见问题排查",1776215713494]