如何让SideStore在内网直接使用

954 字
5 分钟
如何让SideStore在内网直接使用

前言#

我还记得我blog第一篇文章讲的是如何自签名osu!Lazer

几年过去了 lazer有了很大的更新

自签的方式和运行也变化很大很大

我后面用了SideStore 它不需要像Altstore一样局域网有一个AltServer

但它有一个问题

就是每次使用都需要打开WireGuard 然后才可以自签名

其实是挺麻烦的 如果忘了开7天后就和Altstore一样挂了

虽然说可以自动在后台签名 和Altstore一样

但是我并不可能一直开WireGuard 我不上Google了吗

近几天我重新装回来我发现他不用wg了 而是用StosVPN去做这些

这玩意还被从AppStore下了

后面用了Stikdebug 但这三个缺点都和wg一样的

其实很蛋疼,如果你从SideStore下App的时候需要魔法

那我就得先用魔法下完了 等他开始签名的时候手动去连接

拉完了

而且由于iOS限制,开流量的时候是不可以用的

所以我就想,能不能集成到局域网中,这样只需要我在家他就自己签名,我也不用折腾了

开始折腾#

我啪的一下找到了这个blog

在内网中免 StosVPN 使用 SideStore

太牛逼了 直接解决了我要的所有

原理#

以下参照了上面的blog

之前用wg的时候可以看到

他就是给iOS分配了一个10.7.0.0的IP 然后转发10.7.0.0/24的所有数据

然后SideStore用10.7.0.1这个IP模拟装了iTunes的电脑去续签开发者证书

wg做的事仅仅就是把从10.7.0.0发往10.7.0.1的数据包交换来源和目标IP

也就是把数据包发给了自己的SideStore

那就很简单了

OpenWRT的配置#

只需要去OpenWRT加两行规则

table inet sidestore {
chain RAW_PREROUTING {
type filter hook prerouting priority raw; policy accept;
# 此处 192.168.0.xxx 改成你的 iOS 设备的 IP
ip saddr 192.168.0.123 ip daddr 10.7.0.1 ip saddr set 10.7.0.1 ip daddr set 192.168.0.123 notrack;
ip saddr 192.168.0.234 ip daddr 10.7.0.1 ip saddr set 10.7.0.1 ip daddr set 192.168.0.234 notrack;
# 可以按需添加更多的规则
}
}

当然这需要给iOS设备手动设置一个静态IP,对于我/16的网段显然不是什么难事(

我的话并不知道怎么在Web界面上调 我选择直接SSH进去

然后把上面的东西粘贴进这个文件里

Terminal window
vi /etc/sidestore.nft
nft -f /etc/sidestore.nft
nft list ruleset | grep 'table inet sidestore' -A 5

能看到设定的规则就是OK了

chrome_OXbOHzYgEE.png
chrome_OXbOHzYgEE.png

然后的话开机的时候让nfttable自动加载就好了

我们写一个init脚本好了

Terminal window
vi /etc/init.d/sidestore_nft

把这个粘贴进去

#!/bin/sh /etc/rc.common
START=99 # 在大部分服务之后启动
STOP=15
start() {
# 检查 nftables 文件是否存在
[ -f /etc/sidestore.nft ] || return 0
echo "Loading sidestore nftables rules..."
# 使用 nft -f 命令从文件加载规则,-f 会自动清空并重新加载文件中的所有内容
nft -f /etc/sidestore.nft
}
stop() {
echo "Stopping sidestore nftables rules..."
# 停止时,删除整个自定义表
nft delete table inet sidestore
}
reload() {
# reload 命令用于在防火墙重载时重新加载规则
stop
start
}

然后启用他

Terminal window
chmod +x /etc/init.d/sidestore_nft
/etc/init.d/sidestore_nft enable
/etc/init.d/sidestore_nft start

主路由的配置#

接下来在主路由上增加一条静态路由规则

chrome_Wwm5kKQQNm.png
chrome_Wwm5kKQQNm.png

网关选择OpenWRT 保存

然后在iOS上重新测试一下Refresh 没问题就完事了

Debug#

然后就翻车了 我发现ping不通

咋回事呢

哦哦哦卧槽傻逼了

在iKuai上静态路由nat后 转发到了OpenWRT 实际上OpenWRT上看到的地址应该是iKuai的地址

所以规则只需要写一行

ip saddr 10.0.0.1 ip daddr 10.7.0.1 ip saddr set 10.7.0.1 ip daddr set 10.0.0.1 notrack

然后就可以了

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

如何让SideStore在内网直接使用
https://cainongw.github.io/posts/sidestore-in-lan/
作者
Cainong
发布于
2025-11-24
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
Cainong
Caiw there 👋
公告
欢迎来到我的博客!这是一则示例公告。
音乐
封面

音乐

暂未播放

0:00 0:00
暂无歌词
分类
站点统计
文章
38
分类
16
标签
48
总字数
57,650
运行时长
0
最后活动
0 天前

文章目录