<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>网络 on 张有志的博客</title>
    <link>https://bianle.me/tags/%E7%BD%91%E7%BB%9C/</link>
    <description>Recent content in 网络 on 张有志的博客</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Wed, 08 Apr 2026 08:30:00 +0800</lastBuildDate>
    <atom:link href="https://bianle.me/tags/%E7%BD%91%E7%BB%9C/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>ss 命令入门：套接字统计与常用排查案例</title>
      <link>https://bianle.me/posts/465/</link>
      <pubDate>Wed, 08 Apr 2026 08:30:00 +0800</pubDate>
      <guid>https://bianle.me/posts/465/</guid>
      <description>&lt;p&gt;&lt;code&gt;ss&lt;/code&gt;（socket statistics）是 Linux 上查看套接字状态的常用工具，属于 &lt;strong&gt;iproute2&lt;/strong&gt; 套件（与 &lt;code&gt;ip&lt;/code&gt; 命令同源）。&lt;br&gt;
在多数发行版里，它已经是替代 &lt;code&gt;netstat&lt;/code&gt; 的推荐方式：&lt;strong&gt;直接从内核取信息，列表大时通常更快&lt;/strong&gt;，参数表达也更贴近现代 TCP 状态机。&lt;/p&gt;
&lt;p&gt;日常排障里，&lt;code&gt;ss&lt;/code&gt; 最常用来回答三件事：&lt;strong&gt;谁在监听、连向哪里、当前连接处于什么状态&lt;/strong&gt;。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;一ss-能做什么&#34;&gt;一、ss 能做什么&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;列出 TCP/UDP/UNIX 等套接字的监听与已建立连接&lt;/li&gt;
&lt;li&gt;按端口、地址、状态过滤输出&lt;/li&gt;
&lt;li&gt;结合 &lt;code&gt;-p&lt;/code&gt; 查看关联进程（需足够权限）&lt;/li&gt;
&lt;li&gt;配合脚本做轻量监控或巡检&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;二常见参数速查&#34;&gt;二、常见参数速查&lt;/h2&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;选项&lt;/th&gt;
          &lt;th&gt;含义&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;-t&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;仅 TCP&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;-u&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;仅 UDP&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;-l&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;仅监听（listening）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;-a&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;所有状态（含 ESTAB、TIME-WAIT 等）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;-n&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;数字形式显示地址与端口（不做 DNS 反解）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;-p&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;显示进程信息（PID/程序名）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;-4&lt;/code&gt; / &lt;code&gt;-6&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;仅 IPv4 / 仅 IPv6&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;-s&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;打印套接字统计摘要&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;状态过滤可用 &lt;code&gt;state&lt;/code&gt; 关键字，例如：&lt;code&gt;ss state established&lt;/code&gt;。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;三常用案例&#34;&gt;三、常用案例&lt;/h2&gt;
&lt;h3 id=&#34;1一眼看完本机监听端口最常用&#34;&gt;1）一眼看完本机监听端口（最常用）&lt;/h3&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ss -tlnp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;-t&lt;/code&gt; TCP，&lt;code&gt;-l&lt;/code&gt; 监听，&lt;code&gt;-n&lt;/code&gt; 避免反查主机名拖慢输出，&lt;code&gt;-p&lt;/code&gt; 显示进程（无 root 时可能看不到其他用户的进程）。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><code>ss</code>（socket statistics）是 Linux 上查看套接字状态的常用工具，属于 <strong>iproute2</strong> 套件（与 <code>ip</code> 命令同源）。<br>
在多数发行版里，它已经是替代 <code>netstat</code> 的推荐方式：<strong>直接从内核取信息，列表大时通常更快</strong>，参数表达也更贴近现代 TCP 状态机。</p>
<p>日常排障里，<code>ss</code> 最常用来回答三件事：<strong>谁在监听、连向哪里、当前连接处于什么状态</strong>。</p>
<hr>
<h2 id="一ss-能做什么">一、ss 能做什么</h2>
<ul>
<li>列出 TCP/UDP/UNIX 等套接字的监听与已建立连接</li>
<li>按端口、地址、状态过滤输出</li>
<li>结合 <code>-p</code> 查看关联进程（需足够权限）</li>
<li>配合脚本做轻量监控或巡检</li>
</ul>
<hr>
<h2 id="二常见参数速查">二、常见参数速查</h2>
<table>
  <thead>
      <tr>
          <th>选项</th>
          <th>含义</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><code>-t</code></td>
          <td>仅 TCP</td>
      </tr>
      <tr>
          <td><code>-u</code></td>
          <td>仅 UDP</td>
      </tr>
      <tr>
          <td><code>-l</code></td>
          <td>仅监听（listening）</td>
      </tr>
      <tr>
          <td><code>-a</code></td>
          <td>所有状态（含 ESTAB、TIME-WAIT 等）</td>
      </tr>
      <tr>
          <td><code>-n</code></td>
          <td>数字形式显示地址与端口（不做 DNS 反解）</td>
      </tr>
      <tr>
          <td><code>-p</code></td>
          <td>显示进程信息（PID/程序名）</td>
      </tr>
      <tr>
          <td><code>-4</code> / <code>-6</code></td>
          <td>仅 IPv4 / 仅 IPv6</td>
      </tr>
      <tr>
          <td><code>-s</code></td>
          <td>打印套接字统计摘要</td>
      </tr>
  </tbody>
</table>
<p>状态过滤可用 <code>state</code> 关键字，例如：<code>ss state established</code>。</p>
<hr>
<h2 id="三常用案例">三、常用案例</h2>
<h3 id="1一眼看完本机监听端口最常用">1）一眼看完本机监听端口（最常用）</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>ss -tlnp
</span></span></code></pre></div><p><code>-t</code> TCP，<code>-l</code> 监听，<code>-n</code> 避免反查主机名拖慢输出，<code>-p</code> 显示进程（无 root 时可能看不到其他用户的进程）。</p>
<p>典型输出片段含义：</p>
<ul>
<li><code>Local Address:Port</code>：本机绑定地址与端口（<code>*</code> 或 <code>0.0.0.0</code> 表示监听所有接口）</li>
<li><code>Peer Address:Port</code>：监听套接字下多为 <code>*:*</code> 或 <code>0.0.0.0:*</code></li>
</ul>
<h3 id="2同时看-tcp-与-udp-监听">2）同时看 TCP 与 UDP 监听</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>ss -tulnp
</span></span></code></pre></div><p>适合快速确认 <strong>Web、DNS、代理</strong> 等常见服务是否在预期端口上监听。</p>
<h3 id="3查某个端口是否被占用例如-8080">3）查某个端口是否被占用（例如 8080）</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>ss -tlnp <span style="color:#e6db74">&#39;sport = :8080&#39;</span>
</span></span></code></pre></div><p>也可配合 <code>grep</code>：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>ss -tlnp | grep <span style="color:#e6db74">&#39;:8080&#39;</span>
</span></span></code></pre></div><p>前者由 <code>ss</code> 自己过滤，套接字极多时更省事。</p>
<h3 id="4查看当前已建立的-tcp-连接">4）查看当前已建立的 TCP 连接</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>ss -tn state established
</span></span></code></pre></div><p>排查 <strong>连接数暴涨、异常外连</strong> 时，可先跑这条看量级与对端地址。</p>
<h3 id="5按对端-ip-过滤例如只看连到-19216811-的-tcp">5）按对端 IP 过滤（例如只看连到 192.168.1.1 的 TCP）</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>ss -tn dst 192.168.1.1
</span></span></code></pre></div><h3 id="6查看-unix-域套接字本机进程间通信">6）查看 UNIX 域套接字（本机进程间通信）</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>ss -xlp
</span></span></code></pre></div><p><code>-x</code> UNIX socket，<code>-l</code> 监听，<code>-p</code> 进程。排查 <strong>数据库本地 socket、容器/应用 IPC</strong> 时有用。</p>
<h3 id="7套接字总体统计快速健康检查">7）套接字总体统计（快速健康检查）</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>ss -s
</span></span></code></pre></div><p>输出里会看到 TCP/UDP 等各协议的 <strong>总数、各状态计数</strong>，适合写进简单巡检脚本。</p>
<hr>
<h2 id="四与-netstat-的对应关系便于迁移">四、与 netstat 的对应关系（便于迁移）</h2>
<p>习惯 <code>netstat</code> 的同学可以大致对照：</p>
<ul>
<li><code>netstat -tlnp</code> → <code>ss -tlnp</code></li>
<li><code>netstat -an</code> → <code>ss -tan</code>（或 <code>ss -uan</code> 等按协议拆开）</li>
</ul>
<p><code>ss</code> 的过滤语法更丰富（如 <code>sport</code>、<code>dport</code>、<code>dst</code>），复杂场景下往往一条命令就够。</p>
<hr>
<h2 id="五权限与注意事项">五、权限与注意事项</h2>
<ul>
<li><strong><code>-p</code> 显示其他用户的进程</strong> 通常需要 root（或 <code>CAP_NET_ADMIN</code> 等能力，视内核与配置而定）。</li>
<li>生产环境批量执行时，建议默认加 <strong><code>-n</code></strong>，避免 DNS 反解导致卡顿或泄露查询行为。</li>
<li>若系统提示没有 <code>ss</code>，请安装 <strong>iproute2</strong>（包名在 Debian/Ubuntu 多为 <code>iproute2</code>，在 RHEL 系多为 <code>iproute</code>）。</li>
</ul>
<hr>
<h2 id="六小结">六、小结</h2>
<p><code>ss</code> 是现代 Linux 上查看套接字的首选工具：<strong>速度快、过滤灵活、与 <code>ip</code> 工具链一致</strong>。<br>
记住 <strong><code>ss -tlnp</code> / <code>ss -tulnp</code> / <code>ss -tn state established</code> / <code>ss -s</code></strong> 四条，多数日常排障已经足够；需要精细条件时再查 <code>man ss</code> 里的 filter 语法即可。</p>
]]></content:encoded>
    </item>
    <item>
      <title>nc（Ncat）命令入门：端口检测、连通性排查与常用案例</title>
      <link>https://bianle.me/posts/464/</link>
      <pubDate>Tue, 07 Apr 2026 12:00:00 +0800</pubDate>
      <guid>https://bianle.me/posts/464/</guid>
      <description>&lt;p&gt;&lt;code&gt;nc&lt;/code&gt;（netcat）是一个非常实用的网络工具，很多系统里它会以 &lt;code&gt;Ncat&lt;/code&gt; 的实现形式出现（例如 Nmap 套件中的 Ncat）。&lt;/p&gt;
&lt;p&gt;它的定位很简单：&lt;strong&gt;快速测试网络连通性、端口状态，以及做临时的 TCP/UDP 收发&lt;/strong&gt;。&lt;br&gt;
日常排查里，&lt;code&gt;nc&lt;/code&gt; 往往比 &lt;code&gt;telnet&lt;/code&gt; 更直接、参数也更灵活。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;一ncncat能做什么&#34;&gt;一、nc（Ncat）能做什么&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;检查某个端口是否开放（最常用）&lt;/li&gt;
&lt;li&gt;测试本机到目标主机的 TCP/UDP 连通性&lt;/li&gt;
&lt;li&gt;快速监听本地端口，模拟服务端&lt;/li&gt;
&lt;li&gt;与脚本结合做批量端口检测&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;二常见参数速查&#34;&gt;二、常见参数速查&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-z&lt;/code&gt;：零 I/O 模式，只探测端口，不发送业务数据&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-v&lt;/code&gt;：输出详细信息（建议排障时始终带上）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-w &amp;lt;秒&amp;gt;&lt;/code&gt;：设置超时时间，避免命令卡住&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-l&lt;/code&gt;：监听模式（本地开一个端口等待连接）&lt;/li&gt;
&lt;li&gt;&lt;code&gt;-u&lt;/code&gt;：使用 UDP（默认是 TCP）&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;三常用案例&#34;&gt;三、常用案例&lt;/h2&gt;
&lt;h3 id=&#34;1检查-mysql-3306-端口是否开放&#34;&gt;1）检查 MySQL 3306 端口是否开放&lt;/h3&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;nc -zv 192.168.50.101 &lt;span style=&#34;color:#ae81ff&#34;&gt;3306&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Ncat: Version 7.92 &lt;span style=&#34;color:#f92672&#34;&gt;(&lt;/span&gt; https://nmap.org/ncat &lt;span style=&#34;color:#f92672&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Ncat: Connected to 192.168.50.101:3306.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Ncat: &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt; bytes sent, &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt; bytes received in 0.02 seconds.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;这个结果说明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;目标主机 &lt;code&gt;192.168.50.101&lt;/code&gt; 可达&lt;/li&gt;
&lt;li&gt;&lt;code&gt;3306&lt;/code&gt; 端口对当前来源开放&lt;/li&gt;
&lt;li&gt;TCP 三次握手已成功建立&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;注意：端口开放不等于数据库账号可登录，它只代表网络层连通。&lt;/p&gt;&lt;/blockquote&gt;
&lt;h3 id=&#34;2快速检测多个常见端口&#34;&gt;2）快速检测多个常见端口&lt;/h3&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;nc -zv 192.168.50.101 &lt;span style=&#34;color:#ae81ff&#34;&gt;22&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;80&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;443&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;3306&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;适合快速判断 SSH、HTTP、HTTPS、MySQL 这些服务是否在监听。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><code>nc</code>（netcat）是一个非常实用的网络工具，很多系统里它会以 <code>Ncat</code> 的实现形式出现（例如 Nmap 套件中的 Ncat）。</p>
<p>它的定位很简单：<strong>快速测试网络连通性、端口状态，以及做临时的 TCP/UDP 收发</strong>。<br>
日常排查里，<code>nc</code> 往往比 <code>telnet</code> 更直接、参数也更灵活。</p>
<hr>
<h2 id="一ncncat能做什么">一、nc（Ncat）能做什么</h2>
<ul>
<li>检查某个端口是否开放（最常用）</li>
<li>测试本机到目标主机的 TCP/UDP 连通性</li>
<li>快速监听本地端口，模拟服务端</li>
<li>与脚本结合做批量端口检测</li>
</ul>
<hr>
<h2 id="二常见参数速查">二、常见参数速查</h2>
<ul>
<li><code>-z</code>：零 I/O 模式，只探测端口，不发送业务数据</li>
<li><code>-v</code>：输出详细信息（建议排障时始终带上）</li>
<li><code>-w &lt;秒&gt;</code>：设置超时时间，避免命令卡住</li>
<li><code>-l</code>：监听模式（本地开一个端口等待连接）</li>
<li><code>-u</code>：使用 UDP（默认是 TCP）</li>
</ul>
<hr>
<h2 id="三常用案例">三、常用案例</h2>
<h3 id="1检查-mysql-3306-端口是否开放">1）检查 MySQL 3306 端口是否开放</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>nc -zv 192.168.50.101 <span style="color:#ae81ff">3306</span>
</span></span><span style="display:flex;"><span>Ncat: Version 7.92 <span style="color:#f92672">(</span> https://nmap.org/ncat <span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>Ncat: Connected to 192.168.50.101:3306.
</span></span><span style="display:flex;"><span>Ncat: <span style="color:#ae81ff">0</span> bytes sent, <span style="color:#ae81ff">0</span> bytes received in 0.02 seconds.
</span></span></code></pre></div><p>这个结果说明：</p>
<ul>
<li>目标主机 <code>192.168.50.101</code> 可达</li>
<li><code>3306</code> 端口对当前来源开放</li>
<li>TCP 三次握手已成功建立</li>
</ul>
<blockquote>
<p>注意：端口开放不等于数据库账号可登录，它只代表网络层连通。</p></blockquote>
<h3 id="2快速检测多个常见端口">2）快速检测多个常见端口</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>nc -zv 192.168.50.101 <span style="color:#ae81ff">22</span> <span style="color:#ae81ff">80</span> <span style="color:#ae81ff">443</span> <span style="color:#ae81ff">3306</span>
</span></span></code></pre></div><p>适合快速判断 SSH、HTTP、HTTPS、MySQL 这些服务是否在监听。</p>
<h3 id="3指定超时避免长时间等待">3）指定超时，避免长时间等待</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>nc -zvw <span style="color:#ae81ff">2</span> 192.168.50.101 <span style="color:#ae81ff">3306</span>
</span></span></code></pre></div><p>在网络不稳定或目标主机可能离线时，建议加 <code>-w</code>。</p>
<h3 id="4扫描端口区间轻量排查">4）扫描端口区间（轻量排查）</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>nc -zv 192.168.50.101 3000-3010
</span></span></code></pre></div><p>适合开发机排查某段端口是否被占用或已开放。</p>
<h3 id="5本地监听端口临时模拟服务端">5）本地监听端口，临时模拟服务端</h3>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>nc -lv <span style="color:#ae81ff">8080</span>
</span></span></code></pre></div><p>可配合另一台机器测试连通性：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>nc -zv &lt;你的IP&gt; <span style="color:#ae81ff">8080</span>
</span></span></code></pre></div><hr>
<h2 id="四排障经验连接失败时优先检查什么">四、排障经验：连接失败时优先检查什么</h2>
<p>当 <code>nc -zv</code> 连接失败时，通常按这个顺序排查：</p>
<ol>
<li>目标服务是否真的在监听该端口（服务进程状态）</li>
<li>本机与目标主机网络是否互通（路由/VPN/网段）</li>
<li>目标主机防火墙或安全组是否放行该端口</li>
<li>是否写错了 IP、端口，或访问了错误环境</li>
</ol>
<hr>
<h2 id="五小结">五、小结</h2>
<p><code>nc（Ncat）</code> 是网络排障工具箱里的高频命令，最常见用法就是：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>nc -zv &lt;目标IP&gt; &lt;端口&gt;
</span></span></code></pre></div><p>一句命令就能快速回答“端口通不通”这个关键问题。<br>
无论是排查 MySQL、Redis、SSH，还是业务服务端口连通性，<code>nc</code> 都非常高效。</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
