标签: OpenWRT

  • Esxi 8 更换Nvme硬盘后 如何迁移Esxi主机和虚拟机到新硬盘

    Esxi 8 更换Nvme硬盘后 如何迁移Esxi主机和虚拟机到新硬盘

    因为去年底开始SSD和内存大幅降价,ITGeeker技术奇客就想着给自己的小主机升个级,换个三星1G的980硬盘,再加了一根32G的金士顿32G内存。

    1. 关闭虚拟机,用ovftool.exe导出完整的ova备份。

    之前用的250G固态硬盘,装了三个虚拟机,其它两个只要关停后, 在Windows系统用ovftool.exe就可以备份出ova或者ovf文件。

    关于要导成ova还是ovf,ITGeeker技术奇客觉得区别不大吧,ova是单文件,ovf是多文件的形式。

    by itgeeker.net

    由于我用的是Esxi 8 系统,VMware官方下载ovftool的时候有这么一个提示:Note: OVF Tool 4.5 for vSphere 8.0 is here at this location, not in the drop-down menu. 如果你也用的Esxi 8系统,那么直接到下面的地址下载ovftool吧:

    https://developer.vmware.com/web/tool/4.5.0/ovf-tool

    解压缩下载好的文件后,用CMD命令进入目录,然后运行:

    ovftool.exe vi://root:YOUR PASSWORD@ESXI 8 IP OR DOMAIN/istore F:\ITGeekerBackupFolder\ESXi\BKN5100_ovftool_bk\istore-2023-02-01.ova

    注意修改你的密码、主机IP和备份路径

    备份之前要关闭虚拟主机的运行,否则提示无法备份之类的错误提示。

    但是,ITGeeker技术奇客碰到的问题是:Esxi 8主机现在是作为主路由器在使用,如果关闭OpenWRT之后就无法访问Esxi 8 主机了。

    主路由虚拟机OpenWrt不能关闭,所以此路不通。

    2. 使用dd命令,完整克隆esxi 8主机

    这个注意听起来很不错的,只要把主机完整的备份位img文件,然后用rufu工具把img写入到新的硬盘就可以啦

    先用命令找出系统硬盘的参数
    ls -l /dev/disks/
    
    # 然后选择一个后面不跟冒号和数字1,5,6,7等的那个,例如:
    t10.NVMe____LITEON_CA32D8D256________________________AA50085056032300
    再使用dd命令备份
    dd if=/dev/disks/t10.NVMe____LITEON_CA32D8D256________________________AA50085056032300 of=/vmfs/volumes/datastore1/ESXi8_bkn5100_all.img
    
    
    # 如果担心文件太大,可以添加gzip进行压缩
    dd if=/dev/disks/t10.NVMe____LITEON_CA32D8D256________________________AA50085056032300 | gzip > /vmfs/volumes/datastore1/ESXi8_bkn5100_all.img.gz
    

    事实上,250G的SSD,安装Esxi 8之后,留给datastore的空间只有111G

    ITGeeker技术奇客在安装了3个虚拟机后,空间只剩55G左右了,再怎么压缩还是不够大。

    空间不足,放弃!

    使用DiskGenius克隆旧的硬盘到新的三星980硬盘上

    本来ITGeeker技术奇客是想用DiskGenius把硬盘克隆成文件存到电脑,然后再转换到新硬盘,不过DiskGenius的这个功能需要付费才行。

    于是下载了傲梅来备份硬盘,傲梅倒是免费开放这个功能,但是试了几次都失败了,也不知道是啥原因。

    DiskGenius把硬盘克隆到另一个硬盘倒是免费的,只好拆了我的飞龙峡谷NUC,把新的三星980硬盘装上去,然后把原先的Esxi 8的硬盘插入nvme移动硬盘盒(幸亏我还有一个硬盘盒),因为刚好拆了飞龙峡谷NUC的系统盘,只好用微PE U盘启动DiskGenius,克隆旧硬盘到新硬盘当中,速度还可以,整个过程花费11分钟不到一点。

    终于克隆成功了,赶紧转到G31的主机开机,接上显示器,Esxi 8启动一切正常,浏览器登录Esxi 8主机,看到虚拟机都不能正常运行了,原因是找不到虚拟机文件了,Esxi 8自己的系统文件到都是正常。

    第一波:解决错误“尚未在主机 上配置数据存储”的问题

    解决方案:先使用ssh登录到Esxi 8主机(需先开启ssh服务)

    esxcfg-volume -l 
    Scanning for VMFS-6 host activity (4096 bytes/HB, 1024 HBs).
    VMFS UUID/label: 63a1884d-cc084b52-f293-60beb4079214/datastore1
    Can mount: Yes
    Can resignature: Yes
    Extent name: t10.NVMe____Samsung_SSD_980_1TB_____________________D9BBA121AS382500:5	range: 0 - 112895 (MB)
    
    #使用esxcfg-volume -M 命令以相同的签名重新挂载VMFS卷(-M 表示持久性,-m 表示非持久性)
    esxcfg-volume -M 63a1884d-cc084b52-f293-60beb4079214

    使用esxcfg-volume -M重新挂载VMFS的UUID即可解决。✌🏿

    第二波:解决错误“无法扩展 VMFS 数据存储 datastore1 – 无法更新”的问题

    硬盘变大了,自然首先想到的是要把增加的空间用起来,于是乎使用Esxi 8的操作界面尝试展开现有VMFS空间,但是失败了:“无法扩展 VMFS 数据存储 datastore1 – 无法更新”,再怎么刷新或者重新扫描硬盘都无济于事。

    于是一顿搜索,找到了用命令行来解决的方法,同样需要先开启Esxi 8主机的SSH服务,再用Shell登录到主机。

    首先,确认一下VMFS分区的存储设备标识符
    ls -l /dev/disks/
    
    #一般最后一个便是VMFS分区,你也可以再Esxi 8的存储-硬盘设备-分区图中查看并确认是否正确
    t10.NVMe____Samsung_SSD_980_1TB_____________________D9BBA121AS382500:5

    我的是第五个分区,后面有冒号和数字5的便是,Esxi 8和之前的Esxi 6和7的盘符有很大区别,之前一般mpx.开头,类似mpx.vmhba0:C0:T0:L0这样的,Esxi 8的会更长些。

    然后,用分区工具partedUtil查看硬盘各分区的开始和结束扇区
    partedUtil getptbl "/vmfs/devices/disks/t10.NVMe____Samsung_SSD_980_1TB_____________________D9BBA121AS382500"
    gpt
    121601 255 63 1953525168
    1 64 204863 C12A7328F81F11D2BA4B00A0C93EC93B systemPartition 128
    2 208896 8595455 EBD0A0A2B9E5443387C068B6B72699C7 linuxNative 0
    3 8597504 16984063 EBD0A0A2B9E5443387C068B6B72699C7 linuxNative 0
    4 16986112 268435455 4EB2EA3978554790A79EFAE495E21F8D vmfsl 0
    5 268437504 1953525133 AA31E02A400F11DB9590000C2911D1B8 vmfs 0
    
    然后,获取硬盘最后的扇区
    partedUtil getUsableSectors "/vmfs/devices/disks/t10.NVMe____Samsung_SSD_980_1TB_____________________D9BBA121AS382500"
    
    34 1953525134
    
    指定分区的起始扇区和所需的结束扇区,调整VMFS分区大小
    partedUtil resize "/vmfs/devices/disks/Device" 分区数字码 开始扇区 结束扇区
    
    #开始扇区为第5区的开始扇区,结束扇区为硬盘最后扇区减去1的值,这里要运行的命令:
    partedUtil resize "/vmfs/devices/disks/t10.NVMe____Samsung_SSD_980_1TB_____________________D9BBA121AS382500" 5 268437504 1953525133

    如果partedUtil resize命令运行失败:”在内核无法重新读取 /dev/Device 上的分区表(设备或资源繁忙)。“请尝试重新引导 ESXi 主机再试一遍。

    ITGeeker技术奇客运行该命令无错误,但是空间没有实际扩展,在分区图查看是扩展了空间,但在实际存储datastore里面实际没有扩张空间,无法使用新的空间,失败!

    第三波:解决错误命令行partedUtil无法resize的问题

    如果第二波并未实际扩展空间的话,那么需要采用进一步的措施来解决扩容问题了。

    为此,您必须先“注销”数据存储区上的所有虚拟机,然后“卸载”数据存储区。

    放心此操作不会丢失任何数据的
    esxcfg-volume --list
    
    Scanning for VMFS-6 host activity (4096 bytes/HB, 1024 HBs).
    VMFS UUID/label: 63a19a4d-cc084b52-f293-60beb4079214/datastore1
    Can mount: Yes
    Can resignature: Yes
    Extent name: t10.NVMe____Samsung_SSD_980_1TB_____________________D9BBA121AS382500:5	range: 0 - 112895 (MB)
    
    # esxcfg-volume --list确认你的硬盘标识符和UUID,然后重新签名您的UUID:
    
    esxcfg-volume --resignature 63a19a4d-cc084b52-f293-60beb4079214
    
    vmkfstools -V
    
    # 接下来使用vmkfstools --growfs "/vmfs/devices/disks/devicename:partition#" "/vmfs/devices/disks/扩张分区,后面输入两遍相同的待扩张分区盘符。例如:
    
    vmkfstools --growfs "/vmfs/devices/disks/t10.NVMe____Samsung_SSD_980_1TB_____________________D9BBA121AS382500:5" "/vmfs/devices/disks/t10.NVMe____Samsung_SSD_980_1TB_____________________D9BBA121AS382500:5"

    至此,我的Esxi 8主机一切恢复正常。👌

    注:未接显示器引起的另一起血案

    不知你是否看过我之前一遍关于没接显示器无法启动华硕主板的文章:折腾了一周的硬盘Raid计划 主机始终点不亮故障分析 原来是华硕主板的显卡Bug

    这次同样发生在倍控G31 N5100的小主机上了,由于把它作为软路由,所以就放在弱电箱旁边,自然无法接显示器。于是我测试的时候拿到电脑边,接上显示器,每次都正常,只要一放到弱电箱那边不接显示器,始终无法找到Esxi 8主机,OpenWRT虚拟机也无法自动启动,折腾了N次最终才想到可能是没接显示的原因。

    于是找到倍控客服,客服让加工程师的微信,果不然还是那句:“扣电池试试吧”。哎,当工程师还是挺简单的,出问题了,扣主板电池吧,之前碰到无法开机,也是这么一句。

    这回还问了我装了啥系统,回答Esxi 8,你装Esxi 7试试吧,我叻个去

  • OpenWrt如何完整的完全的禁用IPV6

    OpenWrt如何完整的完全的禁用IPV6

    虽说IPV6推广那么多年了,但真正使用的似乎还是很少。当你使用OpenWrt作为路由器系统的时候,有些应用反而会因为ipv6产生一些莫名奇妙的问题。ITGeeker技术奇客经过多方面搜索,并经过多次尝试,找到了完整且完全禁用ipv6的正确方法。

    以下是通过命令行来禁止OpenWrt的ipv6的完整过程:

    1. 首先禁止Lan,Wan和DHCPv6及odhcpd

    uci set 'network.lan.ipv6=0'
    uci set 'network.wan.ipv6=0'
    uci set 'dhcp.lan.dhcpv6=disabled'
    /etc/init.d/odhcpd disable
    uci commit
    

    有些人可能会担心禁用odhcpd会带来问题,实际上据说odhcpd是专门位IPV6服务的。

    by itgeeker.net

    2. 禁用 RA 和 DHCPv6,这样就不会分发 IPv6 IP

    uci -q delete dhcp.lan.dhcpv6
    uci -q delete dhcp.lan.ra
    uci commit dhcp
    /etc/init.d/odhcpd restart
    

    3. 现在可以禁用 LAN 委派

    uci set network.lan.delegate="0"
    uci commit network
    /etc/init.d/network restart
    

    4. 禁用odhcpd

    /etc/init.d/odhcpd disable
    /etc/init.d/odhcpd stop
    

    5. 最后你可以删除 IPv6 ULA 前缀

    uci -q delete network.globals.ula_prefix
    uci commit network
    /etc/init.d/network restart
    

    你现在登录OpenWrt界面就会发现所有IPV6相关的配置和设置都已被删除或禁止(disabled)。

  • OpenWRT如何使用国内镜像

    OpenWRT如何使用国内镜像

    OpenWRT的安装命令opkg,使用opkg install来安装还是非常方便的。

    opkg查询组件的2个常用命令

    opkg list | grep -i samba
    
    opkg list-installed | grep usb

    OpenWRT使用list可以查询源里可选的组件有哪些?

    OpenWRT使用list-installed可以查询已安装的组件有哪些?

    by itgeeker.net

    解决OpenWRT下载太慢的问题

    OpenWRT官方网站推荐的其他镜像:https://openwrt.org/downloads#mirrors

    其实里面没有中国境内的,但国内清华大学和中科院的镜像用起来都是没有问题的:

    1. https://mirrors.ustc.edu.cn/lede/ 
    2. https://mirrors.tuna.tsinghua.edu.cn/openwrt/ 

    清华的还有一个是:https://mirrors.tuna.tsinghua.edu.cn/lede 其实和openwrt结尾一样的,因为之前openwrt就叫openwrt,后来改了叫lede,现在又改回去叫lede了。

    修改文件 /etc/opkg/distfeeds.conf   

    主要替换掉官方下载域名downloads.openwrt.org

    #先备份原始的
    cp /etc/opkg/distfeeds.conf /etc/opkg/distfeeds.conf.bk
    #然后直接用sed替换
    sed -i 's_downloads\.openwrt\.org_mirrors.tuna.tsinghua.edu.cn/openwrt_' /etc/opkg/distfeeds.conf
    cat /etc/opkg/distfeeds.conf
    #然后更新
    opkg update

    OpenWRT升级所有组件命令

    opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade

    如果OpenWRT没有发现可升级的组件,这条命令会抛出一段错误信息,不用管它,说明都已经是最新版本了。

    by itgeeker.net

    OpenWRT恢复原始源

    sed -i 's_mirrors\.tuna\.edu\.cn_downloads.openwrt.org_' /etc/opkg/distfeeds.conf

    或者也可以直接把刚才的备份文件覆盖回来更方便

    cp -f /etc/opkg/distfeeds.conf.bk /etc/opkg/distfeeds.conf
  • 树莓派3B/3B+刷OpenWRT原生img 作为旁路由让全屋免配置上机场(二)

    树莓派3B/3B+刷OpenWRT原生img 作为旁路由让全屋免配置上机场(二)

    接上部分:树莓派3B/3B+刷OpenWRT原生img 作为旁路由让全屋免配置上机场(一)

    这部分是安装工具和应用部分,ITGeeker在不下于两套系统做了测试,该套方案全部可行。根据实践已完成技术奇客原创网络拓扑图设计v1:

    具体如何配置以后补上,估计会涉及一些敏感词汇,所以会尽量避开具体软件的名称。

    2020年4月20日 更新

    by itgeeker.net

    OpenWRT先更改一下国内镜像

    可以参看:OpenWRT如何使用国内镜像

    这对后面顺利安装组件及依赖包很重要。

    添加OpenWrt-dist源

    官方介绍在此: OpenWrt-dist 是专门针对OpenWRT的一个源,里面包含了很多已编译好的ipk文件,极大的方便了OpenWRT的用户。

    通过此源可以方便安装诸如以下组件:

    • opkg update
    • opkg install ChinaDNS
    • opkg install luci-app-chinadns
    • opkg install dns-forwarder
    • opkg install luci-app-dns-forwarder
    • opkg install shadowsocks-libev
    • opkg install luci-app-shadowsocks
    • opkg install simple-obfs
    • opkg install ShadowVPN
    • opkg install luci-app-shadowvpn

    OpenWRT获取设备架构命令:

    opkg print-architecture | awk '{print $2}'

    此处我们讨论的树莓派3B/3B+是同一个架构aarch64_cortex-a53,所以可以通过sed来添加对应的源:

    echo "src/gz openwrt_dist http://openwrt-dist.sourceforge.net/packages/base/aarch64_cortex-a53
    src/gz openwrt_dist_luci http://openwrt-dist.sourceforge.net/packages/luci" >> /etc/opkg/customfeeds.conf

    通过OpenWrt-dist安装代理相关组件

    opkg update
    
    opkg install ChinaDNS luci-app-chinadns dns-forwarder luci-app-dns-forwarder shadowsocks-libev luci-app-shadowsocks simple-obfs

    这里技术奇客ITGeeker同时安装了simple-obfs混淆插件,不过后面如果通过luci界面配置ss时添加obfs参数后无法正常启动ss,但是可以通过修改或添加新的服务启动ss命令,绕过luci界面配置可以实现正常启动。

    使用混淆是因为我的代理服务器支持obfs配置,而且工作的非常好。

    by itgeeker.net
    OpenWRT通过luci界面的services服务菜单配置组件出错的解决方案

    OpenWRT 19.07.2在通过luci的服务菜单配置组件,会抛出一堆错误,无法打开组件配置界面的问题,类似:

    Failed to execute cbi dispatcher target for entry '/admin/services/v2ray/global'.
    The called action terminated with an exception:
    /usr/lib/lua/luci/dispatcher.lua:938: module 'luci.cbi' not found:
    	no field package.preload['luci.cbi']
    	no file './luci/cbi.lua'
    	no file '/usr/share/lua/luci/cbi.lua'
    	no file '/usr/share/lua/luci/cbi/init.lua'
    	no file '/usr/lib/lua/luci/cbi.lua'
    	no file '/usr/lib/lua/luci/cbi/init.lua'
    	no file './luci/cbi.so'
    	no file '/usr/lib/lua/luci/cbi.so'
    	no file '/usr/lib/lua/loadall.so'
    	no file './luci.so'
    	no file '/usr/lib/lua/luci.so'
    	no file '/usr/lib/lua/loadall.so'

    可以通过安装以下组件予以解决:

    opkg install luci luci-base luci-compat

    可选和必选组件安装

    opkg install vsftpd openssh-sftp-server ipset libustream-mbedtls wget bind-dig ca-certificates iptables-mod-tproxy ip-full ca-bundle coreutils-base64 iptables-mod-nat-extra libpthread curl 

    这里包含了一些必须的组件,比如wget,https支持,ipset以及curl等后面必要的组件,也有一些可选的,比如fsftpd就是使用sftp软件,比如使用filezilla连接到树莓派就可以使用该服务。

    by itgeeker.net
    OpenWRT启动sftp服务
    /etc/init.d/vsftpd enable && /etc/init.d/vsftpd start

    重要的dnsmasq-full安装

    openwrt的默认dnsmasq并不支持ipset,需要安装dnsmasq-full版本。ipset是为了支持对域名的转发代理,而chinadns是对ip进行转发代理。所以如果你选择域名匹配的方式走代理,则需要安装dnsmasq-full版本。这里就有了一个问题,当卸载dnsmasq之后,无法解析域名,也就无法安装dnsmasq-full了。这里需要卸载和安装同步进行以避免此类问题。代码如下:

    opkg remove dnsmasq && opkg install dnsmasq-full

    至此,技术奇客已完成了相关的组件及应用的安装,接下来会发布针对各个应用/服务组件的配置指导。

    by itgeeker.net

    ITGeeker这介绍一下关于拓扑图的逻辑思路:

    shadowsocks-libev包含 ss-local、ss-redir 和 ss-tunnel 三个组件。

    by itgeeker.net
    • ss-redir 负责将 OpenWrt 的 TCP/UDP 出口流量透明地转发至ss代理服务器;
    • ss-local 是本地 SOCKS5 代理服务器,可额外地为浏览器等客户端应用提供 SOCKS5 代理服务;
    • ss-tunnel 负责转发本地 DNS 请求至 ss-server,借由 ss-server 连接指定的境外 DNS 服务器。
    • Dnsmaq-full 是 OpenWrt 的系统级 DNS 转发服务器,本方案下 Dnsmaq 接收来自局域网的 DNS 请求后直接转发给 ChinaDNS 处理;
    • ChinaDNS 利用国内 DNS 和 ss-tunnel 链接的ss-server的DNS,可解决 DNS 污染问题;
    • dns-forwared和ss-tunnel 作用类似,但似乎比后者更好用些。

    OpenWRT代理配置方法:

    OpenWRT SS服务配置

    OpenWRT安装的SS使用luci界面设置参数比较少,建议分三个配置设置:

    ss-local -c /etc/shadowsocks_local.json -u -v
    ss-redir -c /etc/shadowsocks_redir.json -u -v
    ss-tunnel -c /etc/shadowsocks_tunnel.json -L 8.8.8.8:53 -u -v

    下面是ss-local的配置示例,可用上面的命令测试是否能成功连接,确定端口61080是否打开,ss-local和ss-tunnel配置类似,local_port一定不同。

    echo '{
      "server":"xxx.xxx.xxx",
      "local_address": "0.0.0.0",
      "local_port":61080,
      "server_port":9999,
      "password":"PPPpppPPP",
      "timeout":300,
      "method":"aes-256-gcm",
      "remarks": "Your-SS-Server",
      "plugin": "obfs-local",
      "plugin_opts": "obfs=tls",
      "plugin_args": "obfs=http;obfs-host=www.baidu.com;fast-open",
      "fast_open": true
    }' > /etc/shadowsocks_local.json
    cat /etc/shadowsocks_local.json

    添加ss openwrt启动脚本:

    echo "#!/bin/sh /etc/rc.common
    
    START=95
    
    SERVICE_USE_PID=1
    SERVICE_WRITE_PID=1
    SERVICE_DAEMONIZE=1
    SERVICE_PID_FILE=/var/run/ss_local.pid
    CONFIG=/etc/shadowsocks_obfs.json
    
    start() {
     # Proxy Mode
     service_start /usr/bin/ss-local -c /etc/shadowsocks_local.json -f /var/run/ss_local.pid
     service_start /usr/bin/ss-redir -c /etc/shadowsocks_redir.json -u -v -f /var/run/ss_redir.pid
     service_start /usr/bin/ss-tunnel -c /etc/shadowsocks_tunnel.json -L 8.8.8.8:53 -u -v -f /var/run/ss_tunnel.pid
    }
    
    stop() {
     # Proxy Mode
     service_stop /usr/bin/ss-local
     service_stop /usr/bin/ss-redir
     service_stop /usr/bin/ss-tunnel
    }" > /etc/init.d/ss
    cat /etc/init.d/ss
    ```
    chmod +x /etc/init.d/ss
    /etc/init.d/ss start
    /etc/init.d/ss enable
    
    killall ss-local
    killall ss-redir
    killall ss-tunnel
    killall ss-redir ss-local ss-tunnel

    OpenWRT DNS-Forwarder配置

    Listen Port         5353   #默认是5300

    Listen Address      0.0.0.0

    DNS Server          8.8.8.8

    OpenWRT dnsmasq-full配置

    此配置dnsmasq的主要作用是ipset需要代理的域名,传递给iptables使用。

    cd /etc/dnsmasq.d && wget https://cokebar.github.io/gfwlist2dnsmasq/dnsmasq_gfwlist_ipset.conf
    
    #若下载错误,请安装
    opkg install libustream-mbedtls coreutils-base64 ca-certificates ca-bundle

    dnsmasq_gfwlist_ipset.conf的每条命令

    server=/hp.com/127.0.0.1#5353
    ipset=/hp.com/gfwlist

    如果不是#5353,请修改为DNS-Forwarder的监听端口

    ipset后面的gfwlist要和下面的防火墙iptables命令行相对应。

    by itgeeker.net
    # 重启dnsmasq
    /etc/init.d/dnsmasq restart

    OpenWRT luci路由、防火墙ipset配置

     把dnsmasq中 ipset为 gfwlist的流量转发到ss-redir端口60800,命令行输入

    ipset -N gfwlist iphash
    iptables -t nat -A PREROUTING -p tcp -m set --match-set gfwlist dst -j REDIRECT --to-port 60800
    iptables -t nat -A OUTPUT -p tcp -m set --match-set gfwlist dst -j REDIRECT --to-port 60800
    ipset add gfwlist 8.8.8.8
    # 重启防火墙
    /etc/init.d/firewall reload

    把上面的iptables命令添加到OpenWrt 管理界面面 Network -> Firewall -> Custom Rules,以后就不用每次输入了。

    理论上到此配置就完成了,可以自由通过代理上网了,如果还不行:

    1. 试着把主路由Lan口的自定义DNS设为旁路由的ip地址例如:192.168.1.2;
    2. 检查旁路由的端口 netstat -nplt,看看是不是所有服务都起来了;
    3. 试着重启主路由和旁路由再试试;
    4. 重启电脑再试试;
    5. 手机使用谷歌Play前需断开wifi重连,油管不用;
    6. 比较好的测试方式是用手机的chrome浏览器打开https://twitter.com
    7. 检查ss-local的socks5是否连通:curl -x socks5://127.0.0.1:61080 google.com
    8. 找个懂的人问问吧

    虽然obfs混淆不被ss支持了,但使用起来还是没有问题的。不过最近服务器支持V2ray了,所以又用OpenWRT配置了V2ray的透明代理,或者说是网关,ITGeeker喜欢把它叫成旁路由,但是这有区别吗?

    by itgeeker.net

    V2ray其实相当于打包了好多上面的应用,安装起来比较方便,功能强大了很多,但配置起来却不是更方便,幸亏openwrt版的内置配置很有用,即将分享!

    树莓派刷原生OpenWRT 安装V2ray作为旁路由(网关或透明代理)让全屋免配置走代理

    by itgeeker.net
  • 树莓派3B/3B+刷OpenWRT原生img 作为旁路由让全屋免配置上机场(一)

    树莓派3B/3B+刷OpenWRT原生img 作为旁路由让全屋免配置上机场(一)

    ITGeeker之前有发表过树莓派刷第三方编译好了的OpenWRT作旁路由的方法,具体请参看: 刷了OpenWRT的路由器+旁路由配置方法+无缝漫游配置(树莓派3B/3B+/4B使用OpenWRT系统做旁路由)

    旁路由拓扑图 by itgeeker.net

    但是ITGeeker发现第三方img总有各种各样的问题:

    1. 过于臃肿,安装了太多不需要的服务。
    2. 通过opkg安装想用的应用会有各种依赖问题。
    3. 有些组件不好用的时候很难更改,比如给SS添加obfs-local混淆功能就很难做到。
    4. 可能会夹带一些私货你也很难察觉。
    5. OpenWRT19.07.2原生已经支持树莓派3B/3B。Raspberry Pi 4B也在路上了,目前已有无界面的snapshot版本发布。
    6. 其他各种问题。。。。。。

    OpenWRT安装部分

    OpenWRT最新版本已来到19.07.2,技术奇客认为一般到大版本的第二版就会比较稳定了。

    OpenWRT版本选择

    有两个地方都可以下载:

    1. Table of Hardware: Firmware downloads:https://openwrt.org/toh/views/toh_fwdownload?dataflt%5BBrand*%7E%5D=raspberry
    2. Index of (root) / releases / 19.07.2 / targets:https://downloads.openwrt.org/releases/19.07.2/targets/

    第一个可以根据产品品牌(brand)、型号(Model)、CPU等信息进行筛选,比较直观,而且筛选功能做的很完善。

    第二个只是根据CPU的型号和架构来选择,另外在对应的产品里面(packages目录)找可以到已经编译好的ipk进行直接下载。

    by itgeeker.net

    树莓派3B和3B+的CPU型号:brcm2708

    树莓派3B和3B+都是Broadcom的cpu,3B是BCM2837A0,3B+是BCM2837B0; Raspberry Pi 4B的cpu型号:Broadcom BCM2838. OpenWRT里对应型号是brcm2708

    树莓派3B、3B+和4B的Target是brcm2708

    树莓派3B和3B+的Subtarget都是bcm2710

    树莓派4B的Subtarget都是bcm2711

    by itgeeker.net

    树莓派3B和3B+的img路径

    Index of (root) / releases / 19.07.2 / targets / brcm2708 / bcm2710 /

    树莓派3B和3B+的img文件选择和区别

    基本上OpenWRT针对每个型号的产品都有4个文件:

    • rpi-3-ext4-factory.img.gz
    • rpi-3-ext4-sysupgrade.img.gz
    • rpi-3-squashfs-factory.img.gz
    • rpi-3-squashfs-sysupgrade.img.gz

    1. 带ext4的是可以利用Linux命令把你的tf卡空余空加拿回来做其他用途,毕竟img才几十M大小而已,一般现在的tf卡都要16G起了吧;这个下次再开一篇讲解;

    2. 带squashfs的相当于品牌路由器的rom,当你对自己安装的应用或配置不满意的时候,可以直接重置系统,就像回到初始状态一样;

    3. 带factory的是给之前不是用OpenWRT系统的用户初始刷tf卡用的;

    4. 带sysupgrade的是针对原先使用OpenWRT的用户,可以用cmd命令或者GUI界面直接升级用。

    by itgeeker.net

    树莓派3B和3B+刷OpenWRT

    首先:直接把tf卡插入电脑,可以使用以下软件的任何一种把OpenWRT文件写入:

    刷tf卡工具:
    • balenaEtcher
    • rufus
    • win32diskimager

    然后:把tf卡插入树莓派,把网线插入树莓派网口并和你使用的终端连接到同一局域网就行,原生的img初始默认是不开启wifi的,所以这是必须的。

    把你的终端,不管你使用pc、phone或者pad之类,需要把自己的ip地址手动设置到除了192.168.1.1之外的192.168.1.xxx

    打开浏览器输入:http://192.168.1.1 进入OpenWRT登录界面,初始密码为空,点击登录就可以开始密码设置,密码设置好之后,ssh就可以用相同密码进行登录。

    ssh root@192.168.1.1

    这个时候还需要设置一下市区time zone,默认是utc时间,应该选择Asia/Shanghai如果你在中国, 然后点击同步时间就可以了。

    下一篇开始介绍使用opkg安装常用工具及机场应用的安装及配置:

    树莓派3B/3B+刷OpenWRT原生img 作为旁路由让全屋免配置上机场(二)

奇客罗方公众号 奇客罗方小程序 奇客罗方客服 ITGeeker Telegram

网站由ITGeeker技术奇客开发并管理;隶属于GeekerCloud奇客罗方智能科技
Site designed and developed by ITGeekerwhich is a sub-website of GeekerCloud
网站地图 | 沪ICP备2021031434号-4