软路由系列–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了

Read more →

软路由系列–Docker

Read more →

软路由系列–续篇–代理和DNS设置

Read more →

软路由系列–路由器系统-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.dnsmasq.conf
port=1053 # 这里我改成了1053,我其他地方有个dns服务,端口是53,所以这里改成了1053

如果有自己的dns proxy,这里要注意,ubuntu有个默认的resolv.service,可以把他禁用掉,不然会冲突

Read more →

软路由系列–路由器系统&软件篇

软路由的系统

软路由,软字排在了路由器前面,说明软件是软路由的头等大事。

软件分为操作系统和应用程序两类,选择了操作系统,也就选了对应的软件生态。那我们先来看操作系统。

由于我们的路由是一个网络硬件,那么哪个操作系统软件的网络软件最丰富呢?毋庸置疑,就是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请求根据域名路由到特定的服务器,可以把他添加到你的配置文件即可,如下(具体示例配置如下)。

配置说明:对于google.com 的域名dns解析请求转发到本地的5353端口, 并且把解析出来的ip地址放入gfwlist这个ipset集合里面。

Read more →

软路由系列–强大的软路由

Read more →