们就需要通过 eBPF 的 <code>get_sockopt</code> 函数来修改这个调用 (不用 <code>bpf_setsockopt</code> 的原因是目前这个参数并不支持 <code>SO_ORIGINAL_DST</code> 的 optname)。</p><p>参考下图，当一个应用程序发起一个请求时，它会经过以下步骤:</p><ol><li>在应用向外发起连接时，<code>connect</code> 程序会将目标地址修改为 <code>127.x.y.z:15001</code>，并用 <code>cookie_original_dst</code> 保存原始目的地址。</li><li>在 <code