借助frp的xtcp+danted代理打通两边局域网p2p方式访问

最终效果

实现C内网所有设备借助c1内网代理访问B内网所有服务器

配置公网服务端A

frps

配置frps.ini

复制代码
[common]
# 绑定frp穿透使用的端口
bind_port = 7000
# 使用token认证
authentication_method = token
token = xxxx

./frps -c frps.ini启动

配置service自启(可选)

/etc/systemd/system/frps.service

复制代码
[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target

[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /root/frp/frps -c /root/frp/frps.ini

[Install]
WantedBy = multi-user.target

systemctl start frps.service启动服务

systemctl enable frps设置自启

配置内网服务端B

danted(socks5代理)

sudo apt update

sudo apt install dante-server

cp /etc/danted.conf /etc/danted.conf.bk

vim /etc/danted.conf 修改为以下内容

service danted restart

systemctl enable danted 自动启动

复制代码
logoutput: stderr
user.privileged: root
user.unprivileged: nobody
internal: 0.0.0.0 port=7891
# external修改为对外网卡名称或者ip
external: xx.xx.xx.xx
socksmethod: none
clientmethod: none
client pass {
	from: 0.0.0.0/0 to: 0.0.0.0/0
}
socks pass {
	from: 0.0.0.0/0 to: 0.0.0.0/0
}

修改external

frpc

配置frpc.ini

复制代码
[common]
# 公网ip
server_addr = xx.xx.xx.xx
server_port = 7000
token = xxxx

[test_p2p]
type = xtcp
sk = yyyy
local_ip = 127.0.0.1
local_port = 7891

./frpc -c frpc.ini启动

配置service自启(可选)

/etc/systemd/system/frpc.service

复制代码
[Unit]
# 服务名称,可自定义
Description = frp client
After = network.target syslog.target
Wants = network.target
# After = network.target

[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /home/user/software/frp/frpc -c /home/user/software/frp/frpc.ini
Restart= always
RestartSec = 60s

[Install]
WantedBy = multi-user.target

systemctl start frpc.service启动服务

systemctl enable frpc设置自启

配置内网主机端C

frpc

frpc.ini

复制代码
[common]
server_addr = xx.xx.xx.xx
server_port = 7000
token = xxxx

[test_p2p_visitor]
type = xtcp
# xtcp 的访问者
role = visitor
# 要访问的 xtcp 代理的名字
server_name = test_p2p
sk = yyyy
# 将远程端口映射为本地对应的端口
bind_addr = 0.0.0.0
bind_port = 9998
# 当需要自动保持隧道打开时,设置为 true
keep_tunnel_open = true
# 每小时尝试打开隧道的次数
max_retries_an_hour = 8
# 重试打开隧道的最小间隔时间,单位: 秒	
min_retry_interval = 90	

./frpc -c frpc.ini启动

配置service自启(可选)

/etc/systemd/system/frpc.service

复制代码
[Unit]
# 服务名称,可自定义
Description = frp client
After = network.target syslog.target
Wants = network.target
# After = network.target

[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /home/user/software/frp/frpc -c /home/user/software/frp/frpc.ini
Restart= always
RestartSec = 60s

[Install]
WantedBy = multi-user.target

systemctl start frpc.service启动服务

systemctl enable frpc设置自启

内网C所有主机访问内网B使用示例

借助c1主机访问所有内网B中设备

ssh

vim ~/.ssh/config 输入以下内容

复制代码
Host Bx
  HostName 想要访问的内网Bx主机的内网ip
  user ssh连接用户名
  Port 22
  ProxyCommand=nc -x 内网C1主机ip:9998  %h %p

ssh Bx 就能ssh连接了

ubuntu文件管理器(nautilus)

同ssh

然后在Other Locations -> Connect to Server中输入ssh://Bx访问

remmina

使用Bx主机内网ip创建一个会话

然后vim ~/.local/share/remmina/对应会话名称.remmina最下方添加

复制代码
proxy_hostname=内网C1主机ip
proxy_type=socks5
proxy_port=9998

其他软件

查找软件使用socks5代理方式,或者直接设置系统代理来使用

更多frp使用示例

更多示例

相关推荐
渡我白衣4 天前
Linux 网络编程 ——2025年度深度总结
网络协议·tcp/ip·https·udp·信息与通信·p2p·tcpdump
梁辰兴10 天前
计算机网络基础:局域网的数据链路层
网络·网络协议·计算机网络·计算机·数据链路层·局域网·梁辰兴
xinyu_Jina12 天前
局域网文件传输:P2P应用层协议——元数据握手与数据通道的生命周期管理
数据库·asp.net·p2p
mooyuan天天12 天前
万字讲解内网横向渗透vulnstack(四):红日靶场4实战全流程3-横向移动 zerologon法(CVE-2020-1472)
frp·内网渗透·横向移动·fscan·红日靶场·zerologon·cve-2020-1472
Logic10113 天前
《计算机组网技术》形考实训1(四个案例):从零组建小型局域网,详解交换机与VLAN配置
计算机网络·网络工程·vlan·交换机·局域网·形考作业·国家开放大学
Biteagle15 天前
P2PK:比特币的「原始密码锁」与比特鹰的技术考古
网络·网络协议·p2p
嘻哈baby20 天前
WebRTC实时通信原理与P2P连接实战
网络协议·webrtc·p2p
GalenZhang88824 天前
使用frp实现内网穿透并通过阿里云实现域名解析
阿里云·云计算·frp
元亓亓亓24 天前
考研408--计算机网络--day6--局域网&IEEE802&VLAN
网络·计算机网络·考研·vlan·局域网·ieee
私人珍藏库24 天前
[Windows] 局域网文件共享工具 一键共享文件夹到网页
windows·pc·工具·局域网·软件·共享