Tag - 计算机网络

NanoPi R2S R2S systemd Linux Ubuntu 计算机网络 软路由    2020-11-25 01:12:03    849    0    0

0.背景

旁路由折腾熟悉之后,我又开始觊觎软路由的方便,于是不久前借着双十一,下单了早有耳闻的NanoPi R2S,177大洋,有散热片有风扇有外壳,还算划算。奈何我跟OpenWRT八字不合,上次树莓派是半天LUCI进不去,这次是FriendWRT官方固件砍掉了tproxy模式。在重新编译固件依然无法成功富强之后。我又掏出了祖传技能,直接用了FriendlyCore(基于Ubuntu)秒杀了富强网关的需求。这个方式也非常通用,不只是R2S,也不仅限于Ubuntu,理论上可以将任何一个双网口的运行Linux并且使用Systemd的机器变成软路由。

1. 配置Wan侧

刷好FriendlyCore之后直接插卡开机,然后就能在路由器管理页面看到该设备的ip地址。我们ssh上去就可以进行配置了,默认用户名和密码都是pi。

配置文件参考:
systemd-network

对应这台机器就是直接在终端执行

  1. sudo vim /etc/systemd/network/eth0.network

然后把下面的内容复制进去。

  1. [Match]
  2. Name=eth0
  3. [Network]
  4. DHCP=ipv4

2. 配置Lan侧

一个软路由本质上就是开启了DHCP服务,DNS服务,网络层包转发的多网口计算机。因此在常规的配置中,通常会配置dnsmasq来做DHCP服务器,并同时担任DNS服务器。然后通过sysctl打开ip包转发,然后用iptables完成包的转发。

但是现在,systemd都包含了这些功能,不需到别的地方到处配置,也不需要再多装什么包,只需把systemd配置好就能完成这些。

我们依然是进入终端,执行

  1. sudo vim /etc/systemd/network/eth1.network

然后把下面的内容复制粘贴进去后,保存并退出。

  1. [Match]
  2. Name=eth1
  3. [Network]
  4. Address=192.168.25.1/24
  5. DHCPServer=true
  6. IPMasquerade=true
  7. [DHCPServer]
  8. PoolOffset=100
  9. PoolSize=50
  10. EmitDNS=yes
  11. DNS=223.5.5.5

/etc/syst

树莓派 Linux Ubuntu 计算机网络 软路由    2020-08-16 00:20:15    1782    0    0

想拿树莓派搭热点试试看,玩了一下OpenWrt,发现一旦进不了luci就会很麻烦。想起几个月前就有新闻的Raspberry Pi OS的64位,去看看怎么样了,发现还没发布。看到Ubuntu有arm 64的image,顺手体验一下。

0. 环境

树莓派4, 4G版本
系统镜像Ubuntu server 20.04

目的:有线网口作为wan口连接到互联网,无线网口作为热点发射WiFi。

1. 装系统

安装

下好的镜像格式是img.xz,解压后用Win32DiskImager烧录。也可以直接不解压,使用balena-etcher烧录。烧录完成后插电就能开机,第一次开机会自动运行一些东西,当屏幕出现Ubuntu Login即可登录。默认用户名和密码都是ubuntu。如果出现登录失败,是正常现象,等一两分钟就好了。

换源

默认的Ubuntu镜像源在海外,速度太慢了,这里可以换成清华源

  1. sudo sed -i 's/http:\/\/ports.ubuntu.com\/ubuntu-ports/https:\/\/mirrors.tuna.tsinghua.edu.cn\/ubuntu-ports/g' /etc/apt/sources.list

关闭自动更新

修改配置文件/etc/apt/apt.conf.d/10periodic,将所有值改为0(实际上也就Update-Package-Lists是1)

或者使用命令替换:

  1. sudo sed -i 's/\"1\"/\"0\"/g' /etc/apt/apt.conf.d/10periodic

切换时区

  1. sudo timedatectl set-timezone Asia/Shanghai

2. 搭建WiFi热点

首先,安装所需要的包sudo apt install hostapd dnsmasq,然后将下面的文件分别更改为后面列出的内容。下面命令无特殊说明都在root权限下执行。

配置ap

(1) vim /etc/hostpapd/hostapd.conf

把下面的内容复制粘贴进去,注意更改wifi名称和密码

  1. interfa