Bootstrap

客户端与服务端通信的端口以及新增ARP缓存

        客户端(例如浏览器)在与服务器通信时确实会使用一个随机的、高于1024的端口。不过,在端口转发的场景中,我们主要关注的是两个不同的层面:服务器的监听端口(即最终目的地的端口)和客户端的源端口

端口转发的工作原理

  1. 客户端与服务器的通信

    当客户端(如Web浏览器)请求一个网页时,它会从操作系统中随机选择一个可用的高端口(通常是1024以上),并通过这个端口发送请求。请求是通过建立TCP连接的形式发送到服务器的特定端口(例如HTTP的80端口或HTTPS的443端口)。
  2. 端口转发的角色

    端口转发主要是在服务器端进行的。在上一篇文章的案例中,通过netsh设置端口转发,这使得你的计算机(作为服务端)能够将进入的流量从特定的端口(例如80端口)转发到内部网络中的其他设备。

结合起来

  • 客户端访问

    • 客户端会向10.0.0.1:80发送请求。这个IP假设是你的服务器上的IP地址。客户端会使用一个随机的源端口(例如60000),但这对转发规则没有影响。
  • 端口转发执行

    • 你的服务器(返回请求的地方)侦听在80端口,转发进入的请求到另一台目标服务器(例如192.168.1.100)的80端口。
  • 流量转发

    • 一旦数据包到达10.0.0.1:80,依据你的netsh规则,数据会被转发到192.168.1.100:80。目标服务器处理请求并返回响应。

 

添加新的ARP条目 

1. 打开命令提示符(以管理员身份运行)
  • 按下 Win + R 键,打开“运行”对话框。
  • 输入 cmd,然后右键点击并选择“以管理员身份运行”以打开命令提示符。
2. 查看当前的ARP缓存

在命令提示符中输入以下命令以查看当前的ARP缓存:

arp -a

这将显示当前ARP缓存中的IP地址与MAC地址的映射,包括网关的条目。

3. 指定要修改的网关IP地址

假设你的网关IP地址是 192.168.1.1,你可以使用以下命令格式来修改这个IP地址对应的MAC地址:

arp -s 192.168.1.1 [新的MAC地址]

例如,如果你想将网关 192.168.1.1 的MAC地址修改为 00-11-22-33-44-55,可以输入:

arp -s 192.168.1.1 00-11-22-33-44-55

4. 验证修改

再次使用以下命令查看当前ARP缓存,以确认你的修改是否生效:

arp -a

你应该能够在ARP缓存列表中看到网关的IP地址对应的MAC地址已经被修改。

注意事项

  • 管理员权限:修改ARP缓存通常需要管理员权限,因此在打开命令提示符时要以管理员身份运行。
  • 网络影响:修改网关的ARP条目可能会导致网络连接中断或不稳定。请务必在使用此方法之前确保你有充足的准备应对可能的网络问题。
  • ARP缓存时间限制:ARP缓存条目有一定的生存时间,修改后的条目可能会在一段时间后恢复到默认状态。这个生存时间取决于网络环境和操作系统设置。
;