跳到主要内容

1.1、点对网

重要
  1. 你要确定你知道你在搞什么,如果只是简单的P2P通信,上面的内容已经够了,以下的东西不要看,不要看,不要看
  2. 确定要搞,那么请看示意图(仅示例,以下绿色内容与此图无关)

Docusaurus Plushie

1、情况1,你的设备支持NAT转发时
  1. linux,已经自动添加NAT转发
  2. windows,暂时找到两种NAT方式
    1. NetNat,请参照 1.1.1、NetNat
    2. RRAS,请参照1.1.2、RRAS(Routing and Remote Access Service)
  3. macos,需要你自己在被访问端添加NAT转发
# 开启ip转发
sudo sysctl -w net.ipv4.ip_forward=1
# 配置NAT转发规则
# 在/etc/pf.conf文件中添加以下规则,10.18.18.0/24是来源网段
nat on en0 from 10.18.18.0/24 to any -> (en0)
# 加载规则
sudo pfctl -f /etc/pf.conf -e

这里我公司-linux的局域网IP为192.168.1.18,如图配置,其它客户端即可通过192.168.1.18/24访问公司-linux的所有设备

Docusaurus Plushie Docusaurus Plushie Docusaurus Plushie

2、情况2,你的设备无法使用NAT转发时
  1. 你的设备无法使用NAT转发(一般出现在低版本windows下,win10以下),那你只能使用端口转发功能来访问你当前设备局域网下的其它设备
  2. 按如下配置。当其它设备通过10.18.18.18:33890 访问时,将访问到你的局域网的192.168.1.35:3389
  3. macos下需要你自己在被访问端添加端口转发
//编辑 pf 配置文件
sudo nano /etc/pf.conf

//添加转发规则
rdr pass on en0 inet proto tcp from any to any port 33890 -> 192.168.1.35 port 3389
rdr pass on en0 inet proto udp from any to any port 33890 -> 192.168.1.35 port 3389

//启用并重新加载 pf
sudo pfctl -f /etc/pf.conf
sudo pfctl -e

Docusaurus Plushie