软路由系列–Others
Others 还有一些其他的点,顺带记录下
Samba 安装软件后,配置目录,添加smb用户和密码
apt install samba vim /etc/samba/smb.conf [global] workgroup = SAMBA security = user passdb backend = tdbsam printing = cups printcap name = cups load printers = yes cups options = raw [other] comment = other path = /data/other browseable = yes writable = yes public = yes write list = +smbuser1 smbpasswd -a smbuser1 # 添加用户,设置密码,这个密码是samba的密码 把Sonarr的docker IP添加到Transmission 访问白名单 Transmission我们是docker安装的,所以白名单的IP是docker的IP,我们使用以下命令获取到sonarr的IP
docker network inspect sonarr_default 假设得到的是172.18.0.1,那么我们在transmission的配置文件中添加以下内容即可,这样的话,sonarr就可以访问transmission了
- WHITELIST=127.
软路由系列–续篇–代理和DNS设置
为啥要写这个 之前买的零刻N-305小主机很好用,又买了一个,替换掉服役6年的小马n3700。趁这次机会,记录下代理和DNS的设置。
Clash代理 这个我不多说了,大家google一下,网上很多,我记录下与软路由的集成。
禁用Ubuntu自带的DNS systemctl disable systemd-resolved vim /etc/resolv.conf nameserver 10.0.1.1 # 这里是你的软路由的ip 开启dhcp服务,给其他设备分配ip或者提供dns服务 apt install dnsmasq 编辑配置文件, 设置dhcp的网段,dns,dns解析文件,端口
vim /etc/dnsmasq.conf interface=br0 dhcp-range=10.0.1.2,10.0.1.254,72h dhcp-option=6,10.0.1.1 resolv-file=/etc/resolv.dnsmasq.conf port=1053 # 这里我改成了1053,我其他地方有个dns服务,端口是53,所以这里改成了1053 Clash的DNS设置 这样的话,相当于你有一个本地的DNS代理,你上游是一些可信的DNS服务器,比如谷歌的,还有一些是宽带运营商的,同时开启fake-ip 模式,这样的话,你的设备比如访问一个被墙的网站,会被Clash代理到一个假的ip地址,你不需要单独设置iptables规则,直接可以透明翻墙。
dns: enable: true listen: 0.0.0.0:53 default-nameserver: - 8.8.4.4 - 1.1.1.1 - 8.8.8.8 - 114.114.114.114 enhanced-mode: fake-ip fake-ip-range: 198.18.0.1/16 # Fake IP addresses pool CIDR nameserver: - 202.101.172.35 - 202.101.172.47 - 8.8.8.8 # default value - tls://dns.rubyfish.cn:853 # DNS over TLS - tls://dns.
软路由系列–路由器系统-Ubuntu
软路由的系统 软路由系统安装 篇1也是写于三年前左右了
自己的软路由系统一直在用linux发行版,第一次使用软路由是2018年了,当时使用的是centos7,还是小马的软路由n3700,当时自己加配了8G内存,也就是4C8G,固态硬盘120,而后这个固态也在今年挂掉了,4月份还重装了下系统,由于配置还在,所以当时继续沿用了centos7
不过呢,最近刚好入手了一个零刻的小主机,i3-N305, 8核8线程,1.8GHz->3.8GHz, 16G,512G。最近也是想换个系统了,因为centos7的软件源太老了,带的内核还是3.10的,官方也没人维护了,索性切换到Ubuntu 22.04.02了,内核5.15(晚些换成6)
Ubuntu 22.04.02 我选择的是server版本,安装的时候,根本不会跳出来GUI,全部命令行,超级nice,而且很贴心的自动把SSH远程访问勾选了,只要安装好,就可以使用远程登陆了,也不需要自己开启了。
开启软路由功能 apt install bridge-utils 编辑 netplan yaml文件,这台主机只有两个网口,所以搞个bridge,而后一个网口当做wan口,一个网口当做lan口,把lan口加入到bridge中即可
vim /etc/netplan/00-installer-config.yaml network: ethernets: enp1s0: dhcp4: true enp2s0: dhcp4: no bridges: br0: dhcp4: no addresses: [10.0.1.1/24] nameservers: addresses: [8.8.8.8] interfaces: [enp2s0] version: 2 应用配置,并且查看信息
netplan apply brctl show 类似以下就成功了,其中enp2s0 就是lan口,你下面挂其他wifi放大器,或者交换机等等
bridge name bridge id STP enabled interfaces br0 8000.6aa01d4c1f71 no enp2s0 开启dhcp服务,给其他设备分配ip或者提供dns服务 apt install dnsmasq 编辑配置文件, 设置dhcp的网段,dns,dns解析文件,端口
vim /etc/dnsmasq.conf interface=br0 dhcp-range=10.0.1.2,10.0.1.254,72h dhcp-option=6,10.0.1.1 resolv-file=/etc/resolv.
软路由系列–路由器系统&软件篇
软路由的系统 软路由,软字排在了路由器前面,说明软件是软路由的头等大事。
软件分为操作系统和应用程序两类,选择了操作系统,也就选了对应的软件生态。那我们先来看操作系统。
由于我们的路由是一个网络硬件,那么哪个操作系统软件的网络软件最丰富呢?毋庸置疑,就是linux了。windows和macos也是可用的,但没有linux的网络库全和大。
适用路由器的linux操作系统,分为两种,路由器专用系统,和常见的linux发行版。下面分别讲下他们的优缺点。
路由器专用系统 如LEDE/openwrt,爱快,koolshare,是专门为路由器开发的嵌入式系统
优点 自带套件,安装方便,为了软路由而生,有web管理页面,配置管理方便
缺点 软件源没有常见linux发行版多,很多软件需要适配
常见linux发行版 如centos、ubuntu、debian、archlinux等
优点 软件丰富,可以装几乎所有的软件
缺点 配置复杂,安装麻烦,需要一定的shell、系统管理的知识
结论 如果你有一定的动手能力,我推荐你使用linux发行版做你的路由器系统(有一定的硬件配置要求,比如我的是4核赛扬的cpu、2G内存,128G的ssd硬盘+1T的hdd硬盘),如果你路由器配置比较低,那么推荐使用路由器专用系统,占用资源较少。
软路由的软件 假设跟我一样,你选择了安装常见linux发行版,并且为了稳定选择了centos当作操作系统(当然你也可以选择自己的发行版),那么需要安装什么软件才能让他变成一个路由器呢?
操作系统安装 centos安装指南官方版
软件列表
dnsmasq (必选)提供dns、dhcp等功能 iptables (可选)网络利器 shadowsocks(可选)网络软件 samba(可选) 本地共享 adbyby(可选)广告过滤透明代理 transmission(可选) bt下载 软件配置指南
1 dnsmasq
由于我家里是光纤,网络运营商自带了一个modem兼路由器。从网上翻了下,找到一个超密,并且超密到路由器,可以设置这个路由器为桥接或者路由功能,如果选择桥接,相当于他什么作用也没有,仅仅是一个光纤信号转换器了,这里我选择的是路由,所以也不需要安装拨号软件了。
首先:设置dhcp server,dns转发,编辑 /etc/dnsmasq.conf
interface=br0 ## 设置你的网络接口,可能与我的不同 dhcp-range=10.0.1.2,10.0.1.254,72h ## 设置你要分配的内网地址段,租约时间,dhcp server resolv-file=/etc/resolv.dnsmasq.conf ## 设置你要使用的默认dns
其次:配置系统转发封包,开启linux路由功能,这样你的linux服务器就是一个路由器了
echo 1 > /proc/sys/net/ipv4/ip_forward sysctl -p net.ipv4.ip_forward = 1
2 shadowsocks 你既然配置了dnsmasq,我推荐你设置全局透明翻墙,使用gfwlist 方案
优点:只要你局域网内的设备连上了你的路由器,所有自动翻墙,无需设置,可以让特定域名根据dnsmasq解析出来的ip强制走ss。 缺点:域名列表需要维护,你可以自己设置,也可以直接使用gfwlist
首先:配置dns解析,配合使用dnsmasq进行dns转发,让你获取正确的ip。 这里如果你安装的dnsmaq已经包含了ipset,则直接使用即可。 把dns请求根据域名路由到特定的服务器,可以把他添加到你的配置文件即可,如下(具体示例配置如下)。