客户端与服务端通信的端口以及新增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缓存条目有一定的生存时间,修改后的条目可能会在一段时间后恢复到默认状态。这个生存时间取决于网络环境和操作系统设置。
相关推荐
搬码临时工5 小时前
端口映射原理操作详解教程:实现外网访问内网服务,本地路由器端口映射公网ip和软件端口映射域名2种方法
网络·tcp/ip·智能路由器
当你需要个夏天2175 小时前
软考网工选择题-1
网络·智能路由器·选择题·软考网工
极客范儿6 小时前
新华三H3CNE网络工程师认证—等价路由
网络·智能路由器
Mr_Xuhhh6 小时前
NAT、代理服务、内网穿透
网络·网络协议·http·https·udp·智能路由器
bestcxx6 小时前
路由器配置之模式
智能路由器
TeleostNaCl1 天前
OpenWrt 编译 | 一种使用 git submodule 方式实现一键更新多个外部软件包
网络·经验分享·git·智能路由器
板鸭〈小号〉4 天前
Linux网络基础(一)
linux·网络·智能路由器
荒野小漂客5 天前
Window路由配置说明
网络·智能路由器
仍然探索未知中5 天前
NAT技术、代理服务器+网络通信各层协议
网络·智能路由器
血腥甘蔗6 天前
下一代防火墙组网全解析
网络·智能路由器