PrL的负能量场
1 subscriber
47 photos
24 videos
14 files
195 links
有的没的
Download Telegram
关于armbian (network manager)以 eui64 的形式获取 Ipv6

刚开始编辑 sysctl 很久发现 ipv6 还不是 eui64, 问了 llm 都没回答对。

查了一下,因为是 network manager接管了这一块,而不是内核管理,随意编辑 sysctl 没用。

查看Linux_ipv6_无状态_设置为_eui64_有状态ipv6更改后缀

—-节选—-

修改 ipv6 无状态地址的缺省模式 addr_gen_mode 为 eui64

检查系统是否有 nmcli 命令。如果没有。-->网络是由内核直接管理的修改方法
执行 nmcli net 检查 NetworkManager 是否启用。
如果返回 disabled 即没启用,-->网络由内核直接管理的修改方法
如果返回 enabled 即启用了。
执行 nmcli device 查看对应的网卡设备是否由 NetworkManager 管理。
显示绿色的 connected 就是由 NetworkManager 管理的。-->由 NetworkManager 管理的修改方法
显示灰色的 unmanaged 是 NetworkManager 没有管理的。-->网络由内核直接管理的修改方法
你也可以考虑,启用NetworkManager对此网卡的管理。 -->见文章后面的“让 NetworkManager 管理有线网卡”


—-
网络由 NetworkManager 管理的,修改eui64方法

Armbian或Debian系统,改缺省无状态ipv6 为 stable-privacy

看帮助 man NetworkManager.conf。
修改 cd /etc/NetworkManager/system-connections/ 目录中对应网卡的文件。比如,Armbian_ethernet文件
[ipv6]
- addr-gen-mode=stable-privacy
+ #addr-gen-mode=stable-privacy
+ addr-gen-mode=eui64
dns-search=
Armbian_ethernet 文件中包含interface-name=eth0 , 所以这个文件是设置有线网卡的。
如果要设置无线网卡为eui64,则去修改对应的包含interface-name=wlan0的配置文件。
对eui64地址,valid_flt 和 preferred_lft 缺省值的修改。debian系统。(未测试)。
看 man systemd.network 有提到 ValidLifetimeSec=,PreferredLifetimeSec=。
另外,sysctl -a| grep _lft 能看到,
net.ipv6.conf.all.temp_prefered_lft = 86400
net.ipv6.conf.all.temp_valid_lft = 604800
net.ipv6.conf.default.temp_prefered_lft = 86400
net.ipv6.conf.default.temp_valid_lft = 604800
但 eui64实际的 valid_lft 远小于 604800,prefered_lft 远大于 86400。
对比 eui64地址的 lft,和路由器上 ipv6-prefix的 lft 基本一样,只差几秒。(2023-10测)
可是,在路由上设置 IPv6 RA Settings -> RA Livetime 为 1800sec,对客户机eui64的两个 lft没影响。
CentOS 或 Debian 修改之后。 systemctl restart NetworkManager 重启服务,即可生效。

#network
局域网内设备 ipv6 公网防火墙放行

现在我们的每一个设备都有公网地址了,但要想被外部访问,需要防火墙放行才行。

ipv6 就不需要像 ipv4 进行转发了,直接放行端口甚至 ip 就行。

如上图所示,进入「网络 - 防火墙 - 通信规则」点击下面的添加按钮:

【常规设置】

协议:按需选择,注意 ping 使用的是 ICMP 协议,不是 TCP/UDP。
源区域:wan
目标区域:lan(如果要访问路由器自己则选择「设备」)
目标端口:自行设置
操作:接受
【高级设置】

地址族限制:仅 IPv6
保存一下就好。

注意,这样配置防火墙实际上是允许以 IPv6 访问任意子网设备的指定端口。

如果希望只放行特定的目标设备,可以指定 IP 后缀。因为运营商分配给我们的前缀是动态变化的,所以不能直接指定 IP,而后缀无论是使用 DHCPv6 还是 SLAAC(使用 eui64),经过配置都可以确保不变。然后添加防火墙规则时填写「目标地址」为 ::aaaa:bbbb:cccc:dddd/-64,其中 -64 的意思是匹配从右往左的 64 位。若部分系统不支持这种缩写,可以回退到 IPv4 的掩码表示形式:::aaaa:bbbb:cccc:dddd/::ffff:ffff:ffff:ffff。


附录

常见前缀

240e::/20: 中国电信
2409:8000::/20: 中国移动
2408:8000::/20: 中国联通
2000::/3: 全局单播地址。也就是全球可路由的公网地址。上述三个都属于这个。
FE80::/10: 链路本地地址。
2002::/16: 仅供 6to4 隧道使用
特殊地址

:: - 相当于 0.0.0.0
::1/128 - 本地回环地址,相当于 127.0.0.1/32
在线小工具


#network
使用以下命令,在路由器上查看内网设备的 eui64 ipv6。替换下面xx为实际mac:
ip -6 neigh | grep -i "xx:xx:xx:xx:xx:xx" | awk '{print $1}' | grep -i ':ff:fe' | grep '^[23]'

#network
淘宝购tria美国家用激光脱毛仪1800元,开五档,一次500下,一周打一次,我用了半年现在已经没有胡青了,小魔女可以试一下。

silkpro也不错,次数多多了,寿命长长了!

#bm
现在使用https://1key.me 验证gemini 真方便

Google Gemini学生验证:

访问https://gemini.google/students/ 生成sheerid 的链接如https://services.sheerid.com/verify/67c8c14f5f17a83b745e3f82/?verificationId=68b8e16a57ab4b******
https://1key.me/ 打开
全局梯子到美丽国
点击开始验证按钮
排队等待执行就好了
image
重新打开https://gemini.google/students/ 页面绑定国内VISA卡信息,我用的是招商银行的
认证成功
image
记得到Google Play取消订阅,否则后面可能会自动扣款


#programming #ai
好文章!
写了clash的dns 污染问题,以及应该怎么配,做了很多实验

https://blog.echosec.top/p/dive-into-clash-dns/

顺便收藏 clash 和 shadowrocket 的配置手册:

https://wiki.metacubex.one/config/dns/#_1

以下这个Shadowrocket的配置手册直接宝藏!
https://lowertop.github.io/Shadowrocket/
—-
dns 配置总结


国外dns用 dot cf/Googleremote(反正走 tcp,远方也能代理,也不依赖长连接)
国内dns用明文223、dnspod
节点解析用doh的223主备

#network
#network
接下来的研究任务是,目前的这种走代理的解析方式的话肯定会有延迟的。
需要研究一下既然是有fake IP了, 这种方法的存在性是否还有意义。
现在有一个问题就是在openclash绕过U D P了之后这种情况下DNS走代理的话到底管不管用

可以做一个小实验,走明文的DNS,加Proxy和不加Proxy看看是否会产生泄漏

只要不泄露的话那么就可以采用这种方法


#network
bard 是好东西!!!

ios 端可以定义推送的严重级别!如果想实现强提醒,那么就把严重级别改为 critical!!
还可以设定持续通知,不断地播放铃声直到dismiss!!
而且还可以点击推送跳转 url. 支持 url scheme! 这样可以跳转到企业微信!

此外,服务端有 cfworker 的实现,非常方便!

这样。。在校方不断给我的自动写日志爬虫设置障碍的情况下。。我不得不采用人工预定提醒的方法了

也还行吧

#programming
完成了一个 tg searcher 的小改版。
现在 json 经过压缩之后再上传到 cf r2,客户端访问的时候解压再搜索。

小 manual:

1. 在本地准备上传文件:

* 确保你的 channel_content.json 文件在电脑上。

* 打开命令行终端,进入该文件所在目录,运行 gzip 命令进行压缩:


     gzip channel_content.json


* 这会生成一个 channel_content.json.gz 文件。

2. 上传压缩文件:

* 使用 curl 命令上传这个 .gz 文件。注意 Content-Type 现在是 `application/gzip`。


     curl -X POST "https://<你的Worker地址>/upload?token=<你的AUTH_TOKEN>" \
-H "Content-Type: application/gzip" \
--data-binary "@channel_content.json.gz"


* --data-binary 确保文件以二进制形式上传,不会被修改。

* 成功后,你会看到 Successfully uploaded channel_content.json.gz. 的消息。


#programming
https://cert.khoindvn.io.vn/

越南佬的ios证书网站

15块钱10个月大概

#programming
这几天开发了一下vercel的无框架后端玩法,对比了一下和cf worker的不同。

其实就是多了vercel.json的一层路由,还有package.json的包定义。

用的node.js的后端,所以比cf worker强大,但是回回得compile, 需要时间。

然后kv的话可以在integration中连接别家服务。目前还没测试过。

相对来说比cf worker重不少


#programming
Vercel 的 rewrites 在这两种情况下的行为是不同的:

---

### 情况一:静态路径重写 (没有使用正则表达式捕获)

这是您最开始的例子:

"rewrites": [
{
"source": "/w",
"destination": "/api/index"
}
]


* 行为: 这种配置像一个**别名**。你告诉 Vercel:“/w 这个路径就是 /api/index 的一个别名”。
* `request.url`: 当请求到达时,Vercel 查找这个别名,然后把请求完全交给 /api/index 处理。此时,对于 api/index 函数来说,它看到的 request.url 就是它自己的地址:`/api/index`。原始的 /w 在这个阶段已经被“翻译”掉了。

---

### 情况二:动态路径重写 (使用正则表达式捕获)

这是您的第二个例子:

"rewrites": [
{
"source": "/(.*)",
"destination": "/api/index.js"
}
]


* 行为: 这种配置像一个**前端控制器**或**网关**。`/(.*) 中的 (.*) 是一个正则表达式的“捕获组”,它会捕获所有传入的路径。你告诉 Vercel:“无论用户访问什么路径,都把它捕获下来,然后交给 /api/index.js` 这个函数去处理”。
* `request.url`: 为了让 /api/index.js 能正确处理请求(例如,根据 URL 显示不同的页面内容),Vercel 必须把**原始捕获到的路径**告诉它。因此,在这种情况下,函数内部拿到的 request.url **就是用户访问的原始 URL**。

---

### 总结

| source 的写法 | 行为模式 | 函数收到的 request.url |
| :----------------------- | :------------- | :------------------------ |
| "/w" (静态路径) | 别名 (Alias) | "/api/index" (目标地址) |
| "/(.*)" (动态正则捕获) | 网关 (Gateway) | "/w" (原始请求地址) |



#programming