本地hosts自动更新Cloudflare解析记录

当本地有DDNS服务的时候,有时候IP一变,我们本地没那么及时获取到DNS记录,就会导致很长时间局域网无法通过域名访问本地局域网的服务。 而Cloudflare有API可以读取某个域名的解析记录,是不是可以利用这一点将Cloudflare的域名-IP对应关系拉取到本地,作为hosts文件,帮助我们加速解析呢? 首先你的CloudFlare要创建一个API令牌,权限只允许读取需要的域名。 然后SSH登录OpenWRT主路由,创建一个脚本文件: /etc/hotplug.d/iface/99-cloudflare-hosts #!/bin/sh # ---------------- 配置 ---------------- CF_API_TOKEN="{CF只读权限TOKEN}" ZONE_ID="{ZONE_ID}" # 文件路径 HOST_FILE="/etc/cloudflare_hosts" TMP_FILE="/tmp/cloudflare_hosts.tmp" LOG_FILE="/var/log/cloudflare_hosts.log" LAST_IPV6_FILE="/tmp/last_ipv6" # 接口与延迟配置 DEFAULT_WAN="pppoe-wan" #接口名称需要根据你实际的网络配置来修改 DELAY_SECONDS=60 # 延迟执行时间(秒) # ---------------- 函数:执行主更新逻辑 ---------------- update_hosts() { IPV6=$(ip -6 addr show dev $DEVICE scope global | grep inet6 | awk '{print $2}' | cut -d/ -f1 | head -n1) [ -z "$IPV6" ] && echo "[$(date)] 未获取到IPv6地址" >> $LOG_FILE && exit 1 LAST_IPV6="" [ -f $LAST_IPV6_FILE ] && LAST_IPV6=$(cat $LAST_IPV6_FILE) if [ "$IPV6" != "$LAST_IPV6" ] || [ "$ACTION" = "manual" ]; then echo "[$(date)] 更新 Cloudflare Hosts,当前IPv6: $IPV6" echo "$IPV6" > $LAST_IPV6_FILE # 获取Cloudflare解析记录 wget -qO- --header="Authorization: Bearer $CF_API_TOKEN" \ --header="Content-Type: application/json" \ "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records" \ | jq -r '.result[] | select((.type=="A" or .type=="AAAA") and (.name|startswith("*")|not)) | "\(.content) \(.name)"' > $TMP_FILE mv $TMP_FILE $HOST_FILE /etc/init.d/dnsmasq reload LOG_ENTRY="[$(date)] 更新完成 IPv6=$IPV6" echo "$LOG_ENTRY" >> $LOG_FILE tail -n 50 $LOG_FILE > ${LOG_FILE}.tmp && mv ${LOG_FILE}.tmp $LOG_FILE else echo "[$(date)] ⚙️ IPv6未变化,跳过更新" >> $LOG_FILE fi } # ---------------- 初始化变量 ---------------- [ -z "$INTERFACE" ] && INTERFACE="wan" [ -z "$DEVICE" ] && DEVICE="$DEFAULT_WAN" [ -z "$ACTION" ] && ACTION="manual" # ---------------- 执行逻辑 ---------------- if [ "$ACTION" = "manual" ]; then # 手动执行立即运行 update_hosts else # 自动执行(接口事件触发) echo "[$(date)] 接口事件触发:$INTERFACE ($ACTION),立即执行并将在${DELAY_SECONDS}s后再次执行" >> $LOG_FILE # 立即执行一次 update_hosts # 延迟执行一次(后台执行) ( sleep $DELAY_SECONDS update_hosts ) & fi 赋予执行权限: ...

2025-11-02 · 2 min · Duke Yin

电信磊科NW1300AC MG1200AC路由器改LAN地址

电信定制版磊科NW1300AC和MG1200AC是两个特别的路由器,全千兆网口,2.4G和5G双频段WiFi,支持IEEE 802.11k/v/r漫游,多台组网可以很好地实现无缝切换信号,比起如今市面上支持mesh组网、漫游的路由器价格还低很多。唯2的不足是在当下硬件配置略显不足,后台不允许修改路由器的IP地址。 但是有邪道可以解决IP地址的问题: 修改路由器IP地址 建议在Chrome浏览器下操作: 恢复出厂设置:用细长物戳屁股10秒,灯全灭后松开。 单独连接电脑,浏览器打开默认管理界面 192.168.0.1(或者leike.cc),根据背面的用户名密码登录 顶部找到【路由设置】,然后找到页面中的【修改路由器地址】 打开修改路由器地址页面后,按F12打开开发者工具 开发者工具顶部找到“Source”或者中文应该是源代码 左侧的文件树找到“Javascript”文件夹,展开,找到"network_setup.js"这个文件,并且点击它 文件内容里按 Ctrl+F 查找,输入192.168 总共有5个位置。 将 "192.168." + $(this).val()+".1" 中的 ".1" 修改为你希望的值 比如你最后希望的IP地址是 192.118.2.101,.1就要修改为.101 一直到最后有一个地方是这样: var manageIp = [ ROUTE_INFO. lan_ip, "192.168.0.1", "192.168.0.1"]; 第一个IP地址改成这个路由器的IP,按上述例子,是192.168.2.101 第二个IP地址改成网关的IP,也就是主路由,大概是192.168.2.1 var manageIp = [ ROUTE_INFO. lan_ip, "192.168.2.101", "192.168.2.1"]; 然后按Ctrl+S保存这个JS文件 然后回到网页,不用管它锁定的IP地址1,直接改为我们希望的网段,最后点击确定即可。 作为AP开WIFI漫游 一般情况这两个路由器都是作为AP模式接在主路由的后面,开WiFi当AP用,设置如下: ...

2025-10-08 · 1 min · Duke Yin

主流以太网线缆及带宽

以下是主流以太网线缆类型的详细参数对比表,包含带宽能力、传输距离及核心特点: 线缆类别最高稳定带宽能力理论最大传输距离频率带宽特点与备注五类 (Cat 5)100 Mbps(百兆)100米100 MHz已淘汰 仅支持百兆网络 无防串扰设计超五类 (Cat 5e)1 Gbps(千兆) 2.5 Gbps*100米 100米*100 MHz主流基础型号 支持千兆网络 *2.5G需设备支持(100米内) 性价比高六类 (Cat 6)1 Gbps(千兆) 10 Gbps*100米 55米*250 MHz物理十字骨架隔离 *10Gbps仅限55米内 抗干扰优于Cat 5e超六类 (Cat 6a)10 Gbps(万兆)100米500 MHz全屏蔽设计(F/UTP或U/FTP) 100米满速万兆 严格串扰控制七类 (Cat 7)10 Gbps(万兆)100米600 MHz双屏蔽层(S/FTP) 非RJ45接口(需GG45) 工业级抗干扰八类 (Cat 8)25/40 Gbps30米2000 MHz数据中心短距离互联 全屏蔽结构 支持25G/40G高速网络 关键补充说明: 超五类 (Cat 5e): 实际支持2.5GBASE-T(IEEE 802.3bz),在100米距离稳定运行,是性价比最高的升级选择。 六类 (Cat 6): 万兆(10GBASE-T)需控制在55米内,超出可能降速,长距离万兆需选Cat 6a。 屏蔽类型: Cat 6a/7/8 均需屏蔽设计(如F/UTP、U/FTP、S/FTP),安装时要求接地,否则可能引入干扰。 应用场景建议: 家庭/办公:Cat 5e或Cat 6(千兆/2.5G) NAS/企业布线:Cat 6a(万兆长距离) 数据中心:Cat 8(25G/40G短距离骨干) 水晶头兼容性: Cat 6及以上建议搭配对应等级水晶头,Cat 7/8需专用接口设备。 选型提示:当前新装工程推荐超六类(Cat 6a),兼顾万兆带宽与100米传输,未来十年无需更换。 ...

2025-06-10 · 1 min · Duke Yin

ISO 639-1 标准语言编码

语言(地区)编码AfrikaansafAlbaniansqArabic (Algeria)ar-dzArabic (Bahrain)ar-bhArabic (Egypt)ar-egArabic (Iraq)ar-iqArabic (Jordan)ar-joArabic (Kuwait)ar-kwArabic (Lebanon)ar-lbArabic (Libya)ar-lyArabic (Morocco)ar-maArabic (Oman)ar-omArabic (Qatar)ar-qaArabic (Saudi Arabia)ar-saArabic (Syria)ar-syArabic (Tunisia)ar-tnArabic (U.A.E.)ar-aeArabic (Yemen)ar-yeBasqueeuBelarusianbeBulgarianbgCatalancaChinese (Hong Kong)zh-hkChinese (PRC)zh-cnChinese (Singapore)zh-sgChinese (Taiwan)zh-twCroatianhrCzechcsDanishdaDutch (Belgium)nl-beDutch (Standard)nlEnglishenEnglish (Australia)en-auEnglish (Belize)en-bzEnglish (Canada)en-caEnglish (Ireland)en-ieEnglish (Jamaica)en-jmEnglish (New Zealand)en-nzEnglish (South Africa)en-zaEnglish (Trinidad)en-ttEnglish (United Kingdom)en-gbEnglish (United States)en-usEstonianetFaeroesefoFarsifaFinnishfiFrench (Belgium)fr-beFrench (Canada)fr-caFrench (Luxembourg)fr-luFrench (Standard)frFrench (Switzerland)fr-chGaelic (Scotland)gdGerman (Austria)de-atGerman (Liechtenstein)de-liGerman (Luxembourg)de-luGerman (Standard)deGerman (Switzerland)de-chGreekelHebrewheHindihiHungarianhuIcelandicisIndonesianidIrishgaItalian (Standard)itItalian (Switzerland)it-chJapanesejaKoreankoKorean (Johab)koKurdishkuLatvianlvLithuanianltMacedonian (FYROM)mkMalayalammlMalaysianmsMaltesemtNorwegiannoNorwegian (Bokmål)nbNorwegian (Nynorsk)nnPolishplPortuguese (Brazil)pt-brPortuguese (Portugal)ptPunjabipaRhaeto-RomanicrmRomanianroRomanian (Republic of Moldova)ro-mdRussianruRussian (Republic of Moldova)ru-mdSerbiansrSlovakskSlovenianslSorbiansbSpanish (Argentina)es-arSpanish (Bolivia)es-boSpanish (Chile)es-clSpanish (Colombia)es-coSpanish (Costa Rica)es-crSpanish (Dominican Republic)es-doSpanish (Ecuador)es-ecSpanish (El Salvador)es-svSpanish (Guatemala)es-gtSpanish (Honduras)es-hnSpanish (Mexico)es-mxSpanish (Nicaragua)es-niSpanish (Panama)es-paSpanish (Paraguay)es-pySpanish (Peru)es-peSpanish (Puerto Rico)es-prSpanish (Spain)esSpanish (Uruguay)es-uySpanish (Venezuela)es-veSwedishsvSwedish (Finland)sv-fiThaithTsongatsTswanatnTurkishtrUkrainianuaUrduurVendaveVietnameseviWelshcyXhosaxhYiddishjiZuluzu

2023-05-17 · 1 min · Duke Yin

杂牌手柄游玩PlayStation RemotePlay

所需程序: x360ce https://github.com/x360ce/x360ce/releases/tag/3.2.9.82 ViGEmBus https://github.com/ViGEm/ViGEmBus/releases/tag/v1.21.442.0 VDX https://downloads.vigem.org/other/paraly/VDX_v1.14.3.0_x64_x86_GPDWinEdition.zip 先将杂牌手柄插入电脑,打开x360ce会识别这个手柄,选择自动配置后,检查键位,如果不合适的可以自己调整。 不关闭x360ce,安装ViGEmBus。 打开VDX,识别到的手柄位会显示connected,将这个手柄的Emulation Type调整为DualShock 4 Controller,点击Connect连接,也就是模拟成PS4手柄。 不关闭VDX。打开PS RemotePlay。 此时手柄应该可以操作PS游戏了。 其原理就是:将普通手柄模拟成Xbox360手柄 -> 用一个中间人获取360的输入 -> 把输入模拟成一个PS4手柄。

2023-01-17 · 1 min · Duke Yin

移动宽带异地PS远程游玩

都说移动宽带不行 但是其实人家挺好的。 无法PS远程游玩是因为端口映射不对。 只需要在路由器上将以下端口全部映射到PS主机上,RemotePlay就一点问题都没有: 9296 UDP 9297 UDP 9303 UDP 这三个是最基础的,如果映射了这三个就能连,就无需以下操作了,如果不能,再将如下的端口也映射给PS: 8572 UDP, TCP 9295 UDP, TCP 9296 UDP 9297 UDP 9298 UDP 987 UDP 9303 UDP 9304 UDP 9305 UDP 9296 UDP 9297 UDP 9303 UDP 然后就可以在异地任何网络环境连接家里的PS5远程游玩,串流比较耗费宽带的上行,所以如果网络卡顿,画面降质量,很大可能是PS5所在的网络上行不够,可以联系运营商提升上行带宽,有可能会收费。

2022-12-15 · 1 min · Duke Yin