Ubuntu上搭建一个基本的内网路由器

本文详细指导如何在Ubuntu系统上安装和配置dnsmasq、iptables和sysctl,设置内网路由,包括DHCP服务器、IP转发和NAT转发,以便内部网络设备能访问互联网。
摘要由CSDN通过智能技术生成

以下是在Ubuntu上搭建一个基本的内网路由器的完整步骤:

  1. 安装必要的软件:
sudo apt update
sudo apt install dnsmasq iptables-persistent

安装过程中,你将被要求配置iptables-persistent,选择保存当前的iptables规则。

  1. 配置网络接口:

编辑网络配置文件:

sudo nano /etc/netplan/01-netcfg.yaml

然后,在配置文件中添加以下内容,假设eth0 连接到Internet,eth1 连接到内部网络:

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:   # 连接到互联网的接口
      dhcp4: yes
    eth1:   # 内部网络的接口
      dhcp4: no
      addresses: [192.168.1.1/24]

保存并关闭文件。

应用配置:

sudo netplan apply
  1. 启用IP转发:

编辑sysctl配置文件:

sudo nano /etc/sysctl.conf

确保以下行没有被注释(没有前面的 # 符号):

net.ipv4.ip_forward=1

保存文件并退出。

应用更改:

sudo sysctl -p /etc/sysctl.conf
  1. 配置DHCP服务器(dnsmasq):

备份原始配置文件:

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.bak

创建新的配置文件:

sudo nano /etc/dnsmasq.conf

在文件中添加以下内容:

interface=eth1
dhcp-range=192.168.2.50,192.168.2.150,12h
dhcp-option=3,192.168.2.1

这将配置eth1接口作为DHCP服务器,分配的IP地址范围为 192.168.2.50192.168.2.150,默认网关为 192.168.2.1

保存并关闭文件。

  1. 设置NAT转发:

使用iptables设置NAT转发,eth0外部网络接口,允许内部网络的流量访问外部网络:

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  1. 保存iptables规则:
sudo iptables-save | sudo tee /etc/iptables/rules.v4
  1. 重启服务:
sudo systemctl restart dnsmasq
sudo systemctl restart systemd-networkd

现在你已经搭建了一个基本的内网路由器。确保连接到内部网络的设备能够成功获取IP地址,并能够访问互联网。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

绿箭柠檬茶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值