相信这里的大部分人都有访问自己家里服务器的需求
但是部分地区家宽不给开 WEB 服务
类似 zerotier 这种虚拟组网方案需要时刻开启软件组网,且对移动端极不友好(影响翻墙)
Frp 呢也要两边设备同时安装才能有隐藏 WEB 服务的效果
我目前使用的是基于 Clash+*ray 的分流方案
Clash 可以替换成任意带分流的软件
优点:
访问服务器完全无感(直连,可以用 80/443)
安全性 Max(毕竟是翻墙用的)
速度也还不错(看协议)
全平台友好(全平台翻墙软件的 Power)
可以细化权限,针对不同用户给予不同访问权限
缺点:
刚需公网 IP(实在没有的话 NAT1 也凑合)
需要开代理(不会有人不是全天开代理吧)
TCP/UDP 流量需要 TUN 模式(其他方案也需要)
配置略复杂,新增服务可能比较麻烦
在家时访问速度会负优化(分流一个 DIRECT 可解)
在 Clash 中把内网流量在规则中分流到自己的*Xray 服务器
在 Xray 服务器中进行二次分流
丢弃全部公网流量,丢弃重要发往重要设备的流量(安全考虑,虽然其实没啥意义)
下面是我的 Xray 配置文件,简单参考就行,路径我随便改的,记得删除注释
192.168.31.1 是我的路由器地址,192.168.31.11 是我的 Nginx 服务器地址
{
"log": {
"access": "/access.log",
"error": "/error.log",
"loglevel": "warning"
},
"dns": {
"servers": ["localhost"],
"hosts": {
"domain:XXXXXXX.com": "192.168.31.11"//把这个域名的全部子域名解析到 Nginx 的服务器 IP
}
},
"inbound": {
"port": 65432,
"protocol": "vmess",
"settings": {
"clients": [
{
"id": "UUID 在此",
"level": 1,
"alterId": 100
}
]
},
"streamSettings": {
"security": "tls",
"tlsSettings": {
"serverName": "XXXX.com",
"certificates": [
{
"certificateFile": "/fullchain.pem",
"keyFile": "/privkey.pem"
}
]
}
}
},
"outbounds": [
{
"tag": "blocked",//未匹配服务全部丢弃,默认未匹配的流量全部走第一个出口
"protocol": "blackhole",
"settings": {}
},
{
"tag": "direct",
"protocol": "freedom",
"settings": {
"domainStrategy": "UseIP"//必须开启此项才能使用 hosts 中的配置
}
}
],
"inboundDetour": [],
"outboundDetour": [],
"routing": {
"domainStrategy": "IPIfNonMatch",
"settings": {
"rules": [
{
"type": "field",
"ip": "192.168.31.1", //此处屏蔽访问路由器
"outboundTag": "blocked"
},
{
"type": "field",
"ip": ["192.168.31.1/24"],//允许访问路由器 IP 段其他设备
"outboundTag": "direct"
},
{
"type": "field",
"domain": ["domain:XXXX.COM"],//允许访问指定域名(实际上用不到这玩意,删了也没啥影响)
"outboundTag": "direct"
},
{
"type": "field",
"domain": ["domain:gstatic.com"],//允许访问测速服务器
"outboundTag": "direct"
},
{
"type": "field",//屏蔽访问其他 IP 段,实际上没意义,没匹配的全丢黑洞了
"ip": [
"0.0.0.0/8",
"10.0.0.0/8",
"100.64.0.0/10",
"127.0.0.0/8",
"169.254.0.0/16",
"172.16.0.0/12",
"192.0.0.0/24",
"192.0.2.0/24",
"192.168.0.0/16",
"198.18.0.0/15",
"198.51.100.0/24",
"203.0.113.0/24",
"::1/128",
"fc00::/7",
"fe80::/10"
],
"outboundTag": "blocked"
}
]
}
}
}
然后是 Clash 的配置文件
加入这些,然后配置好 proxies,proxy-groups 就行
- 'IP-CIDR,192.168.31.1/32,DIRECT' //用于在家里直连路由器
- 'IP-CIDR,192.168.31.1/24,🖥️ 专用服务'
- 'DOMAIN-SUFFIX,XXXX.com,🖥️ 专用服务'
1
PXW139 OP 如果有 NAT1,配合打洞的话好像也可以是一种内网穿透方案?
|
2
superht 2023-10-24 00:46:39 +08:00 via iPhone
用 surge 也行。在手机上用 surge 通过 wireguard 协议连接家里内网,并添加分流策略:
wireguard 自动切换 = subnet, default = wireguard, "SSID:XXXX" = DIRECT 以及规则: AND,((IP-CIDR,192.168.X.X/24)),wireguard 自动切换 可以实现在移动网络下,访问内网时走 wireguard ,访问互联网时走 surge 默认策略。 |