👋 动态记录 & 转发分享 https://tg.okhk.net/ ✌️
#RePost #Script #GitHub #Network #Tool

Nali 这个仓库知道的人挺少的,其实它配合mtr使用,效果很好,比如

mtr -n4 tj.189.cn |./nali-nt_linux_amd64


为了方便使用也可以加入bashrc中,如

echo 'ntr(){
 mtr $* -n |nali-nt_linux_amd64
}' >> ~/.bashrc
# 用法如下
ntr www.baidu.com
ntr tj.189.cn -4T


项目仓库地址

https://github.com/nxtrace/nali

Message link
#RePost #URL #Network

路由器大全:https://mao.fan/select

路由器CPU天梯图:https://mao.fan/socpk.html

作者:小鲸社长(B站 YouTube同名)
k8s 部署 mihomo(former clash-meta) 作为内网的透明网关

#RePost #K8s #GitHub #Network

写了份指南,

实现了在 k8s 集群上部署 mihomo ,让 mihomo 作为透明网关接管内网流量

用到了 multus 将 pod 的网卡暴露到内网

用起来还不错,不需要 vm 这么重的方式部署透明网关了

pod 挂了还能自愈,主打一个一劳永逸。

https://github.com/Winson-030/mihomo-kubernetes

https://www.v2ex.com/t/1043922#reply0

Message link GitHub - Winson-030/mihomo-kubernetes: Deploy mihomo(clash-meta) as transparent proxy gateway in Kubernetes
#RePost #Network #GitHub #Script

🔗 IP Quality - 一个简单实用的 IP 质量体检脚本

▎项目功能:IP 检测

▎项目介绍:一个用于 IP 质量检测的 Shell 脚本项目,主要功能是检测 IP 地址的匿名程度和地理位置信息。

支持 中英双语、IPv4/IPv6 双栈查询、基础信息、IP 类型、风险评分、风险因子、流媒体解锁、邮局检测六大模块和 IP 地址黑名单 400+ 数据库检测 等功能。

▎项目地址:点击打开

Message link
一行命令降低 IPv6 出站优先级

#RePost #Script #Network

https://www.nodeseek.com/post-73797-1

命令:

sed -Ei '/^[[:space:]]*#?[[:space:]]*precedence[[:space:]]+::ffff:0:0\/96[[:space:]]+100\b.*?$/ {s/.+100\b([[:space:]]*#.*)?$/precedence ::ffff:0:0\/96  100\1/; :a;n;b a}; /^[[:space:]]*precedence[[:space:]]+::ffff:0:0\/96[[:space:]]+[0-9]+.*$/ {s/^.*precedence.+::ffff:0:0\/96[^0-9]+([0-9]+).*$/precedence ::ffff:0:0\/96  100\t#原值为 \1/; :a;n;ba;}; $aprecedence ::ffff:0:0\/96  100' /etc/gai.conf


这个命令干了什么?

这个命令对/etc/gai.conf文件做了修改,由于是系统文件,请确保拥有足够的权限运行此命令

运行该命令会处理以下4种情况:

1. 遇到已经设定过ipv4最高优先级配置时,结束执行,不做任何修改
2. 在遇到被注释掉的ipv4优先级配置时,将取消其注释,同时保留该行配置文件的注释
3. 当遇到设定值非100的优先级设置时,将优先级设置为100并注明原值为多少
4. 当没有发现被注释掉的ipv4优先级配置时,在配置文件末尾添加配置

命令将会为/etc/gai.conf 文件配置以下值:

precedence ::ffff:0:0\/96  100


这行配置有什么用

::ffff:0:0/96 是ipv4的ipv6映射地址

这行配置将ipv4作为最高的优先级

为什么选择优先v4出站

现在主流系统都默认优先使用v6出站

但是一般来说网站对v4的支持效果更好,连接速度更佳(有时候v6去目标网站会绕路)

相信单这一点对于MJJ来说就已经够了

而且降低v6优先级并不是关闭v6,仍然能够访问v6 only网站

为什么不使用更简单点的命令

一寸长一寸强!

echo "precedence ::ffff:0:0\/96  100" >> /etc/gai.conf


这行命令当然可以实现降低v6优先级的效果

但是

1. 如果不小心重复运行将会导致配置文件底下出现多行相同配置项,影响美观(强迫症患者)
2. 如果已经配置过ipv4优先级了(比方说设置为60),那么直接用上面的echo命令会出现冲突

如何查看命令效果

使用

ping google.com


如果是ipv6优先,则会ping 到google的ipv6地址

v4优先则ping v4的地址

以下是v6出站示例

ping google.com
PING google.com(hkg12s13-in-x0e.1e100.net (2404:6800:4005:808::200e)) 56 data bytes
64 bytes from hkg12s37-in-x0e.1e100.net (2404:6800:4005:808::200e): icmp_seq=1 ttl=119 time=0.341 ms
64 bytes from hkg12s37-in-x0e.1e100.net (2404:6800:4005:808::200e): icmp_seq=2 ttl=119 time=0.350 ms
64 bytes from hkg12s37-in-x0e.1e100.net (2404:6800:4005:808::200e): icmp_seq=3 ttl=119 time=1.01 ms
64 bytes from hkg12s13-in-x0e.1e100.net (2404:6800:4005:808::200e): icmp_seq=4 ttl=119 time=0.325 ms
64 bytes from hkg12s37-in-x0e.1e100.net (2404:6800:4005:808::200e): icmp_seq=5 ttl=119 time=0.369 ms


使用命令之后可以看到出站变成v4优先了

ping google.com
PING google.com (142.250.204.78) 56(84) bytes of data.
64 bytes from hkg07s39-in-f14.1e100.net (142.250.204.78): icmp_seq=1 ttl=59 time=0.797 ms
64 bytes from hkg07s39-in-f14.1e100.net (142.250.204.78): icmp_seq=2 ttl=59 time=0.805 ms
64 bytes from hkg07s39-in-f14.1e100.net (142.250.204.78): icmp_seq=3 ttl=59 time=0.828 ms
64 bytes from hkg07s39-in-f14.1e100.net (142.250.204.78): icmp_seq=4 ttl=59 time=0.886 ms
64 bytes from hkg07s39-in-f14.1e100.net (142.250.204.78): icmp_seq=5 ttl=59 time=0.887 ms


注意

如果商家镜像中该配置文件的末尾已经有了该配置项(例如v.ps)脚本会将前面被注释掉的

#precedence ::ffff:0:0/96  100


给取消注释,导致有两个相同的配置。这是没有办法的,无法通过单单一行命令应对这种情况 ;_;

该命令可能不适配老系统,可能不适配redhet系(未测试)

经测试大便11/12没有问题,ubuntu较新系统没有问题
#RePost #Network

加速原理

Vercel 在大陆周围还有很多节点,其中包含中国台湾、韩国、日本、新加坡等,这些节点的访问延迟在接受范围,且相对香港节点来说带宽更充足。

Vercel 的 Anycast 会自动将节点解析至距离最近的香港服务器,但如果手动解析则太过麻烦。

vercel.cdn.yt-blog.top 

经过不断测速(大约消耗了200MB流量)手动解析,并通过 D 监控检查状态,无法访问时会及时暂停节点。使用时自动解析至附近可用节点,尽可能的选择优质节点。
#RePost #Network

可接入 Cloudflare 免费二级域名

注册地址

注册流程

1. 先注册个账号
2. 去邮箱点验证链接验证一下。
3. 登录账号
4. 点顶部导航Register Contact创建4个注册信息
5. 点顶部导航MFA Setup开启二次验证,我用的微软的AUTHENTICATOR。
#RePost #DevOps #Script #Network

转发工具之Gost简单用法

什么是Gost

GO语言实现的安全隧道

常用特性

这里仅列出我常使用到的特性

多协议支持

支持TCP/UDP

TUN

支持转发链

安装

```bash# 当前3.0最新rc版本

wget

chmod +x gost

mv gost /usr/bin/gost

**运行**

常见场景可能就是端口转发,具体可以参考官方文档: [端口转发](https://latest.gost.run/tutorials/port-forwarding/)

cli方式
```bashgost -L tcp://:8080/:8081

监听本地:8080,并将相关请求转发到8081端口

省缺IP时默认为当前机器IP

配置文件方式

```yaml# gost.yml

log:

level: info

# stdout标准输出,none不打印日志

output: none #stdout

services:

name: pod

addr: :2222

handler:

type: tcp

listener:

type: tcp

forwarder:

nodes:

- name: pod

addr: "[fd7a:115c:a1e0:ab12:4843:cd96:6255:5794]:22"
运行
```bashgost -C /etc/gost/gost.yml


设置开启启动

编辑/etc/systemd/system/gost.service

```[Unit]

Description=GO Simple Tunnel

After=network.target

Wants=network.target

[Service]

Type=simple

ExecStart=/usr/bin/gost

Restart=always

[Install]

WantedBy=multi-user.target
开机并启动
```bashsystemctl daemon-reload
systemctl enable gost --now
systemctl restart gost
systemctl status gost


其他

对比Realm, 配置和玩法复杂多了,如果仅用于端口转发我觉得还是Realm比较好,具体可以参考我写的转发工具之Realm极简用法
#RePost #Network #DevOps

关于优化服务器网络配置的配置文件,供参考:

vi /etc/sysctl.conf

```lua#需配合修改 open files 参数,才有效

#fs.file-max = 655360

#开启bbr

net.ipv4.tcpcongestioncontrol = bbr

net.core.default_qdisc = fq

#关闭rp_filter

#net.ipv4.conf.all.rp_filter = 0

#SSR 对于会出现突发空闲的长周期 TLS 连接有很大影响,所以关闭

net.ipv4.tcpslowstartafteridle = 0

#设置为1,当检测到 ICMP 黑洞时启用

net.ipv4.tcpmtuprobing = 1

#启用fastopen,跳过tcp3次握手

#net.ipv4.tcp_fastopen = 3

#ARP缓存的过期时间(单位毫秒)

#net.ipv4.neigh.default.base_reachable_time_ms = 600000

#在把记录标记为不可达之前,用多播/广播方式解析地址的最大次数

#net.ipv4.neigh.default.mcast_solicit = 20

#重发一个ARP请求前等待毫秒数

#net.ipv4.neigh.default.retrans_time_ms = 250

#Socket缓存配置

net.ipv4.tcp_rmem = 8192 262144 536870912

net.ipv4.tcp_wmem = 4096 16384 536870912

#TCP窗口大小,接收缓冲区可用buffer

net.ipv4.tcpadvwin_scale = -2

#限制写入队列中未发送字节的大小

net.ipv4.tcpnotsentlowat = 131072

#关闭IPv6

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

net.ipv6.conf.lo.disable_ipv6 = 1```

参考文章:

Message link
#RePost #URL #Network

Beej 的网络概念指南(Beej's Guide to Network Concepts)

著名技术作者 Beej 新发布的计算机网络底层概念的英文教程。
#RePost #Network

以下是关于WARP key的文档地址:

1. WARP – Wiki & 文档

包含从账户池获取WARP 账号的API 文档。

1. Cloudflare Warp提取WireGuard配置文件

介绍如何提取Cloudflare Warp的WireGuard配置文件。

1. WARP使用教程:入门篇

这是一个WARP的使用教程,包の了如何在root文件夹下生成/root/wgcf-account.toml文件,以及如何替换license_key为你自己的warp+ key。

1. yonggekkk/warp-yg: warp多功能一键脚本

这是一个warp多功能一键脚本项目,拥有查看VPS本地IP、netflix、chatgpt(网页与客户端)是否解锁等情况、endpoint对端优选IP等功能。同时,该项目也会介绍在VPS平台与Replit平台无限生成warp+密钥与warp配置.

以上信息仅供参考,详情请参阅原文档。
#DevOps #RePost #Network nftables 入门:从配置文件到端口转发 gpt: 这篇文章主要介绍了如何使用nftables进行防火墙配置和端口转发。文章首先解释了Netfilter和nftables的基本原理,然后详细介绍了如何编写和理解nftables的配置文件,以及如何在OpenWrt上使用nftables进行端口转发。作者还提供了一些实用的参考资源,包括nftables官方wiki和其他Linux发行版的相关文档。最后,作者分享了他的个人经验和教训,鼓励读者自己动手实践和探索nftables的更多功能。

https://blog.rachelt.one/articles/new-to-nftables-from-config-to-dnat/

source
 
 
Back to Top
OKHK