当前位置: 首页 > article >正文

局域网内开发板通过代理服务器共享WiFi上网的完整配置指南

1. 为什么需要开发板共享WiFi上网很多嵌入式开发者都遇到过这样的场景开发板通过网线连接到局域网交换机但交换机没有外网接入而你的笔记本电脑却连着WiFi可以正常上网。这时候如果开发板需要安装软件包或者访问网络资源就会非常麻烦。我曾经在调试树莓派时每次都要把SD卡拔下来插到电脑上修改配置效率极低。其实通过将笔记本变成代理服务器就能完美解决这个问题。原理很简单笔记本作为中间人一边连着WiFi上网一边通过有线网络与开发板通信。开发板的所有网络请求都先发给笔记本再由笔记本转发到互联网。这种方式不仅适用于树莓派任何运行Linux的开发板如Jetson Nano、BeagleBone等都能受益。2. 搭建代理服务器的三种方案对比2.1 3proxy方案详解原始文章提到的3proxy确实是个轻量级选择但我在实际使用中发现几个可以优化的地方。首先下载时建议选择0.9.4稳定版而非最新版因为新版本有时会有兼容性问题。解压路径最好避免Program Files这类需要管理员权限的目录我习惯放在C:\ProxyServer这样的自定义路径。配置文件有几个关键参数需要注意# 限制最大连接数防止过载 maxconn 500 # 启用内存缓存提升性能 cache 500 # 设置超时避免僵死连接 timeouts 1 5 60 60 180 1800 15 602.2 Squid代理方案对于需要更强大功能的场景我推荐Squid。虽然配置稍复杂但支持缓存加速和更细粒度的控制。Windows版可以通过Cygwin安装setup-x86_64.exe -q -P squid配置文件中建议开启可见主机名和缓存visible_hostname myproxy cache_dir ufs /var/cache/squid 1000 16 256 maximum_object_size 256 MB2.3 使用Python临时代理如果只是临时使用用Python快速搭建更灵活。在笔记本上运行python -m http.server 8000 --bind 0.0.0.0然后在开发板设置export http_proxyhttp://笔记本IP:80003. 开发板网络配置的进阶技巧3.1 永久生效的配置方法很多新手只在终端里设置环境变量关闭后就失效。正确的做法是写入配置文件# 对于大多数Linux系统 echo export http_proxyhttp://192.168.1.100:3128 | sudo tee -a /etc/environment echo export https_proxyhttp://192.168.1.100:3128 | sudo tee -a /etc/environment # 对于嵌入式设备可能没有sudo echo export http_proxyhttp://192.168.1.100:3128 ~/.profile source ~/.profile3.2 特定应用的代理设置不同工具需要单独配置这里分享几个常用配置APT包管理器echo Acquire::http::Proxy http://192.168.1.100:3128; | sudo tee /etc/apt/apt.conf.d/99proxyGit版本控制git config --global http.proxy http://192.168.1.100:3128 git config --global https.proxy http://192.168.1.100:3128Docker容器mkdir -p ~/.docker echo {proxies:{default:{httpProxy:http://192.168.1.100:3128,httpsProxy:http://192.168.1.100:3128,noProxy:localhost,127.0.0.1}}} ~/.docker/config.json4. 常见问题排查手册4.1 连接测试步骤当代理不工作时建议按这个顺序排查先在开发板ping笔记本IP使用telnet测试端口连通性telnet 192.168.1.100 3128用curl带详细输出查看问题curl -v --proxy http://192.168.1.100:3128 https://www.baidu.com4.2 典型错误解决方案错误1Connection refused检查3proxy进程是否运行确认防火墙放行了3128端口查看笔记本是否开启了网络共享错误2Proxy authentication required检查配置文件是否意外启用了认证确认环境变量中的密码没有特殊字符错误3TLS handshake failed尝试在curl加-k参数跳过证书验证更新开发板的CA证书sudo apt-get install ca-certificates5. 安全加固与性能优化5.1 基础安全配置建议在3proxy配置中添加这些规则# 限制只允许开发板IP访问 allow 192.168.1.50 deny * # 启用简单认证 auth strong users user:CL:password5.2 网络性能调优对于需要大量下载的场景可以调整这些参数# 增大TCP缓冲区 nodelay sockbuf 65536 # 启用压缩 compression5.3 自动化脚本分享我写了个自动配置脚本可以一键设置代理#!/bin/bash IP$(hostname -I | awk {print $1}) echo 检测到笔记本IP: $IP sed -i s/192.168.1.100/$IP/g /etc/environment source /etc/environment echo 代理设置完成6. 特殊场景解决方案6.1 笔记本使用动态IP如果笔记本IP经常变化可以用主机名替代# 在开发板的/etc/hosts添加 192.168.1.100 myproxy6.2 多开发板共享代理当有多个开发板时建议在笔记本用这个配置# 限制总带宽为10Mbps bandwidth 10M 10M6.3 跨VLAN访问方案如果开发板在不同子网需要在笔记本开启IP转发# Windows netsh interface ipv4 set interface 以太网 forwardingenabled经过这些优化我们的开发环境网络访问会稳定很多。记得定期检查代理服务器的日志我通常用这个命令监控tail -f /var/log/3proxy.log | grep -v 127.0.0.1

相关文章:

局域网内开发板通过代理服务器共享WiFi上网的完整配置指南

1. 为什么需要开发板共享WiFi上网? 很多嵌入式开发者都遇到过这样的场景:开发板通过网线连接到局域网交换机,但交换机没有外网接入,而你的笔记本电脑却连着WiFi可以正常上网。这时候如果开发板需要安装软件包或者访问网络资源&…...

vLLM-v0.17.1SSH部署教程:免Docker手动配置的轻量级推理环境搭建

vLLM-v0.17.1 SSH部署教程:免Docker手动配置的轻量级推理环境搭建 1. vLLM框架简介 vLLM是一个专为大型语言模型(LLM)设计的高性能推理和服务库,以其出色的吞吐量和易用性著称。这个开源项目最初由加州大学伯克利分校的天空计算实验室开发,…...

AI Agent创业公司能给多少钱:股权与薪资对比

?呢干么怎该体具那 不是画大饼,现在市场就是这个价格,好的ai agent研发公司都是抢着要的,由于懂这个的人太少了,而想用这个技能的公司又太多了。我们公司就有一个二本毕业的同学,由于技能牛又懂业务&#x…...

RKNPU2实战指南 --- 【6】量化精度分析全流程解析

1. 量化精度分析的核心价值 第一次接触RKNPU2的量化精度分析功能时,我和大多数开发者一样充满疑问:为什么要在嵌入式设备上大费周章做量化分析?直到在RK3588开发板上部署ResNet18模型时,发现量化后的识别准确率从92%暴跌到67%&…...

MacOS下STM32标准库移植踩坑实录:手把手修复core_cm3.c编译错误(附完整Makefile)

MacOS下STM32标准库移植核心问题解析:从编译错误到Makefile优化实战 当你在MacOS环境下尝试移植STM32标准库时,那个突如其来的core_cm3.c编译错误是否让你措手不及?作为一名经历过同样困境的开发者,我完全理解这种挫败感——明明按…...

FreeRTOS下STM32 HAL库I2C通信避坑:别再傻等I2C_WaitOnFlagUntilTimeout了

FreeRTOS下STM32 HAL库I2C通信优化:从阻塞等待到高效任务调度 在嵌入式开发中,I2C总线因其简单的两线制接口和广泛的外设支持而备受青睐。然而,当我们将STM32的HAL库与FreeRTOS结合使用时,一个常见的性能陷阱正在悄然吞噬着系统的…...

性价比高的无代码多端协同办公知名服务商

在当今数字化办公的浪潮中,企业对于高效、便捷且性价比高的协同办公工具需求日益增长。无代码多端协同办公平台凭借其降低数字化门槛、提升协同效率等优势,成为众多企业的首选。今天,就为大家介绍一家性价比高的无代码多端协同办公知名服务商…...

百科知识卡片制作技巧:提升信息传达效率的7个设计法则

我们的大脑天生偏爱图像而非文字。在进行深度学习或知识梳理时,我习惯将复杂的概念拆解为结构化的图谱,这就是百科知识卡片制作的核心价值所在。它不仅仅是信息的搬运,更是一种视觉思维的重组。但在很长一段时间里,这种重组过程被…...

各种类的模型OpenAI格式

各类模型的OpenAI格式支持程度差异很大,下面逐一详细说明:一、有官方OpenAI格式标准的模型类型1. Chat / Text Completion ✅ 最完整已如前述,/v1/chat/completions 是最成熟的标准。2. Embedding ✅ 有标准POST /v1/embeddings// 请求 {&quo…...

JetLinks社区版2.1本地部署踩坑实录:从MySQL配置到前端Vue项目启动的保姆级避坑指南

JetLinks社区版2.1本地部署实战:MySQL配置与Vue前端联调深度解析 第一次接触JetLinks社区版时,我本以为按照官方文档就能顺利完成本地部署。然而从数据库切换到前后端联调,几乎每个环节都遇到了意料之外的"坑"。这篇文章将分享我从…...

如何彻底解决RDP Wrapper配置中的系统兼容性问题:开源工具的完整指南

如何彻底解决RDP Wrapper配置中的系统兼容性问题:开源工具的完整指南 【免费下载链接】rdpwrap RDP Wrapper Library 项目地址: https://gitcode.com/gh_mirrors/rd/rdpwrap RDP Wrapper Library是一款优秀的开源工具,它让Windows家庭版用户也能享…...

物联网平台推荐

ThingsKit 物联网平台:把数据打通,让设备说话市面上物联网平台一堆,挑来挑去还是头疼:设备协议不统一,对接搞死人; 云边数据不同步,断网就抓瞎; 可视化大屏要从零开发,周…...

Qwen3.5-4B-Claude-GGUF惊艳效果展示:开启‘显示思考过程’后的完整推理链

Qwen3.5-4B-Claude-GGUF惊艳效果展示:开启显示思考过程后的完整推理链 1. 模型核心能力概览 Qwen3.5-4B-Claude-4.6-Opus-Reasoning-Distilled-GGUF是一个经过特殊优化的推理模型,它在保持轻量化的同时,显著提升了结构化分析和分步骤推理能…...

前端开发技术演进:一个小小开发者的浅显思考

写在前面! 3.3章节、3.4章节、4.2章节、6.2章节、大白话凝练等处有求于AI。 本文系个人浅见,疏漏之处在所难免,恳请各位方家不吝赐教。路漫漫其修远兮,吾将上下而求索。 作为一名在前端开发领域摸爬滚打小有几年的开发者&#xff…...

LoFTR Unleashed: Revolutionizing Feature Matching with Transformer-Based Detector-Free Approach

1. 传统特征匹配的困境与突破 计算机视觉领域有个经典难题:如何让两张不同角度拍摄的图片找到相同的特征点?这就像让两个素未谋面的人通过照片认出对方身上的独特标记。传统方法通常采用"检测-描述-匹配"的三步走策略,就像先找人脸…...

深入解析Strapi中的媒体处理

引言 在现代Web开发中,内容管理系统(CMS)扮演着至关重要的角色。Strapi,作为一个开源的无头CMS,提供了强大的API功能来管理和展示内容。然而,初学者在使用Strapi时可能会遇到一些常见的问题,特别是在处理媒体文件方面。本文将通过一个实际案例,详细解释Strapi如何处理…...

GNSS星历数据详解:最终、快速、超快速有什么区别?如何选择最适合你的?

GNSS星历数据详解:最终、快速、超快速有什么区别?如何选择最适合你的? 在卫星导航领域,GNSS星历数据就像是一张精确的"太空地图",它记录了卫星在轨道上的实时位置和速度信息。对于从事测绘、气象、地震监测等…...

VMware虚拟机部署万物识别镜像指南

VMware虚拟机部署万物识别镜像指南 1. 引言 想在本地环境体验强大的AI视觉识别能力,但又不想折腾复杂的驱动和环境配置?通过VMware虚拟机部署万物识别镜像,可能是最简单快捷的方式。这个方案特别适合想要快速上手AI视觉识别、进行原型验证或…...

Python3.8环境配置实战:用Miniconda镜像秒解gdal导入报错

Python3.8环境配置实战:用Miniconda镜像秒解gdal导入报错 1. 问题背景与场景分析 作为一名地理信息系统(GIS)开发者,我最近在Ubuntu 18.04系统上遇到了一个棘手的问题:在Python3.8环境中安装gdal后,导入时却报出libpoppler.so.1…...

C# 如何实现对象序列化

在实现之前,先要做一些准备工作,序列化其实是对象和字符串(文件)之间的互相转换,所以首先我们准备好一个实体类,很简单的Person类:using System.Text.Json;public class Person {public string …...

《信息系统项目管理师教程(第4版)》监控项目工作(监控过程组)知识结构+10道真题

《信息系统项目管理师教程(第4版)》监控项目工作(监控过程组)知识结构及真题一、监控项目工作(监控过程组)知识结构1. 监控项目工作概述定义:跟踪、审查和报告项目进展,以实现项目管…...

Jupyter Notebook内核连接失败?三步搞定tornado版本冲突问题

Jupyter Notebook内核连接失败?三步搞定tornado版本冲突问题 作为一名长期使用Jupyter Notebook进行数据分析的开发者,我深知当内核突然无法连接时的那种挫败感。特别是当你正专注于某个重要项目,突然弹出的"IOLoop未初始化"错误让…...

Cursor界面深度定制:从Settings汉化到个性化语言包制作

1. 为什么需要深度定制Cursor界面? 作为一名长期使用Cursor的开发者,我深刻理解官方英文界面带来的不便。每次打开设置菜单都要在脑海中自动翻译,特别是团队协作时,非技术背景成员面对满屏英文设置项时的茫然表情让我印象深刻。Cu…...

德希科技在线多参数水质分析仪

一、产品概述与适用场景本设备为高度集成化全自动水质监测系统,可完成多参数水质数据实时采集、传输与智能分析。设备被广泛应用于自来水厂、供水管网、小区二次供水、游泳池、农村饮用水等场景,从取水、制水到供水实现全程水质监管,让水质状…...

轻量级AI助手开发:基于通义千问1.8B的智能问答系统搭建

轻量级AI助手开发:基于通义千问1.8B的智能问答系统搭建 1. 项目概述与核心价值 在AI应用开发领域,如何在资源受限环境下部署高效的智能问答系统一直是开发者面临的挑战。通义千问1.5-1.8B-Chat-GPTQ-Int4模型通过量化压缩技术,在保持良好对…...

Intv_AI_MK11虚拟机部署全攻略:VMware安装Ubuntu并配置开发环境

Intv_AI_MK11虚拟机部署全攻略:VMware安装Ubuntu并配置开发环境 1. 准备工作 在开始之前,我们需要准备好以下工具和资源: VMware Workstation Pro 17(或更高版本)Ubuntu 22.04 LTS 镜像文件(推荐使用桌面…...

什么是网络安全,网络空间安全有哪些安全?

什么是网络安全,网络空间安全有哪些安全? 什么是网络安全,网络空间安全有哪些安全? 本文章详细列举出网络空间安全的十六大种类 网络空间安全是一个覆盖 “物理层 - 网络层 - 应用层 - 数据层 - 业务层” 的全域防护体系&#x…...

Qwen3-Embedding-0.6B快速部署指南:解决启动报错,轻松调用API

Qwen3-Embedding-0.6B快速部署指南:解决启动报错,轻松调用API 1. Qwen3-Embedding-0.6B模型简介 Qwen3-Embedding-0.6B是Qwen家族最新推出的文本嵌入模型,专为语义理解和向量化任务优化。这个0.6B参数的版本在保持高性能的同时,…...

Qwen3-Reranker-0.6B效果展示:低资源语言检索能力验证

Qwen3-Reranker-0.6B效果展示:低资源语言检索能力验证 1. 引言 在信息检索领域,低资源语言的文本检索一直是个棘手的问题。传统检索模型往往在英语等主流语言上表现优异,但遇到小语种时效果就会大打折扣。最近发布的Qwen3-Reranker-0.6B模型…...

BEYOND REALITY Z-Image参数调优:步数、CFG Scale这样设,人像更自然

BEYOND REALITY Z-Image参数调优:步数、CFG Scale这样设,人像更自然 1. 理解关键参数对人像生成的影响 BEYOND REALITY Z-Image作为一款专注于写实人像生成的AI工具,其生成效果很大程度上取决于两个核心参数的设置:步数(Steps)和…...