一、硬件及环境准备
- 首当其冲,硬件要到位,贴一张市面上软路由配置对照表
目前市场上软路由大部分都是工控机,如果你有闲置电脑,完全可以用来当软路由使用,性能甚至会比市面上的软路由更好(主要看的是CPU性能),如果不知道怎么选,推荐N3150或J1900,我用的是3965U。
-
准备系统镜像
到恩山 x86专区或koolshare论坛下载OpenWrt镜像,img格式即可。恩山的LEDE相对koolshare的稳定,后者插件较多,你也可以根据自己的需求编译出镜像,这里首推lean大的LEDE
-
准备一个至少4G的U盘,写盘用。
-
无线AP
用于提供无线信号,无线路由器的话到后台设置把拨号上网改成自动获得IP地址即可,把DHCP关闭,后续用LEDE做DHCP
-
网线2根
二、刻录系统
用Win32disk将镜像刻录到U盘,不会的自行百度吧。
三、安装OpenWrt
软路由接上显示器,插上刻录好的U盘,进入BIOS或F12设置下从U盘启动,系统会自动把U盘上的系统装到软路由硬盘上
当安装进度处于静止时,这时候按下回车
正常进入系统,说明已经安装完毕。
四、网络配置
cp /etc/config/network /etc/config/network.bak ##备份下
vi /etc/config/network
进去把192.168.1.1改成你规划的网段IP,我这里用LEDE做主路由,IP和网关都指向LEDE自己即可
config interface 'lan'
option type 'bridge'
option ifname 'eth0'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
option gateway '192.168.1.1'
option broadcast '192.168.1.0'
option dns '114.114.114.114 119.29.29.29'
重启网卡
/etc/init.d/network restart
光猫出来的线插到软路由第一个口,软路由Lan2口接跟网线到你的电脑,设置IPv4静态地址,和你的软路由处于同一个网段,接着到web后台界面设置拨号上网功能,(如果你是用来做旁路由的话,那么Wan口就不用设置,Lan口网关指向你的主路由即可),恩山的LEDE默认密码password
,koolshare的默认密码koolshare
创建一个新接口,名称设置为Wan,协议为PPPoE,填写拨号上网账号密码提交即可,这时候你的电脑可以通过LEDE正常上网了
五、DHCP/DNS配置
1.DHCP
到网络
->DHCP/DNS
设置DHCP池范围,由LEDE来提供DHCP服务,DNS指向国内114即可
2.DNS
重点说下DNS这块,这里推荐一款DNS优化工具,工作原理如下:
运行在软路由上的SmartDns会去请求你自定义的上游服务器(这里一般是公共DNS),当你本地局域网机器去请求外部服务器时,上游DNS服务器返回域名对应的Server IP地址列表,SmartDNS会检测与本地网络访问速度最快的IP节点,将延迟最低的IP返回给本地客户端,网页打开速度会大大提升
安装步骤
ssh到LEDE系统,执行以下命令并安装
cd /tmp
opkg update
wget https://github.com/pymumu/smartdns/releases/download/Release30/luci-app-smartdns.1.2020.02.25-2212.all-luci-compat-all.ipk
wget https://github.com/pymumu/smartdns/releases/download/Release30/smartdns.1.2020.02.25-2212.x86_64-openwrt-all.ipk
opkg remove luci-app-smartdns smartdns
opkg install smartdns.1.2020.02.25-2212.x86_64-openwrt-all.ipk ##这个包一定要装在最前面
opkg install luci-app-smartdns.1.2020.02.25-2212.all-luci-compat-all.ipk
这时候回到web界面的服务
–>smartdns
重定向选中作为dnsmasq的上游服务器,上游服务器填入你需要的服务器
大部分公共DNS默认采取的协议都是udp,这里协议类型TCP和UDP最好都配置下,有些公共DNS判断大包时(解析返回结果超过512字节)就会采用TCP截断重传方式进行请求和返回:
缓存配置:
域名预加载
、过期缓存服务
都勾选上,缓存大小根据个人情况设置,域名TTL
及缓存存活时间,这里设置7200秒,即同个域名解析查询每2小时才向上游服务器发起一次DNS查询请求,没超过这个时间则都走SmartDNS的缓存
六、拓展-内网嗅探/DNS劫持
如果你用lede做主路由,局域网所有流量都会经过此路由,在上面做抓包和劫持轻而易举
来到网络
–>DHCP/DNS
–>hosts和解析文件
,去掉忽略解析文件
的勾选,此时局域网发起解析请求时,优先会找LEDE的/etc/hosts
文件,在里面设置解析条目即可
tcpdump
安装:
opkg update
opkg install tcpdump
到此,LEDE软路由配置完成,整个架构如图: