促成这篇文章的形成其实有很多因素,最早的时候用的路由是中兴的H618B,那240Mhz的处理器在脱机下载以及当NAS时性能感人,对了,那用的是Tomato系统,还只能双拨,就更感人了。后来换成了图拉丁,折腾了很久,又是敲腿又是自己动手焊了个DC-ATX电源,这时用的是OpenWRT系统的X86版本,性能方面好多了,好歹是图羊1G的频率,用了好长一段时间。但是因为是老板子了,没有PCI-E也没有装显卡,为了节省功耗嘛,可结果是出了点小问题又要死命折腾,很是啰嗦。实在累了,接着换了Modt平台,用了是建基i915的板子,处理器1.6G迅驰,又用了好长时间,可以说,这套东西基本上可以一直用下去了,系统非常稳定的,各种服务器运行非常正常。可是可是,某一天测功耗28瓦,天啊,还没加3.5硬盘呢,因为很久不看电影了,NAS功能一直没用,孰不可忍,加硬盘了还得了?换,于是某宝瞎逛,入手了一片N3150,真是牛逼,加上了所有的硬件都只有18瓦,包括3.5硬盘。可是如果只装个OpenWRT是不是大材小用啊,我都给它装了16G内存了,还能硬解码4K呢。于是,想起反正都是Linux的家族,应该Ubuntu也可以实现路由功能吧。

折腾这就又开始……备份硬盘资料,全盘安装Ubuntu,Desktop版本,现在的Linux系统安装应该说也是傻瓜的很,此过程忽略……

我这里是情况是板载千兆有线网卡,插了张PCI-E的AR9380无线网卡,还有一张RT2870USB无线网卡,RT2870是装了定向天线点对点接收单位的网络,有线网卡和9380做局域网使用。

第一步当然是用2870连上网络了,因为接下来会安装一些软件。接着用ifconfig -a查看所有的网卡名称,这等一下得用上。

sudo apt-get install isc-dhcp-serve

sudo apt-get install hostapd

sudo apt-get install bridge-utils

sudo apt-get install dnsmasq

配置网络接口:sudo gedit /etc/network/interfaces

auto lo

iface lo inet loopback

auto lan0   #有线网卡名称

iface lan0 inet manual

auto wlan0  #无线网卡名称

iface wlan0 inet manual

auto br0 #自定义的接口

iface br0 inet static

address 192.168.1.1  本机局域网地址 别的机器网关就是它了

netmask 255.255.255.0

broadcast 192.168.1.255

bridge-ports lan0 wlan0 #把两真实网卡桥连

bridge_fd 9

bridge_hello 2

bridge_maxage 12

bridge_stp off

配置DHCP服务器:sudo gedit /etc/dhcp/dhcpd.conf

subnet 192.168.1.0 netmask 255.255.255.0 {

allow booting;

allow bootp;

interface br0;  网络接口填自定义的那个

option domain-name-servers 58.20.127.238,192.168.1.1;  #分给客户的DNS地址

default-lease-time 604800; #7 days

max-lease-time 2592000; #30 days

range 192.168.147.100 192.168.1.200;

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.1.255;

option routers 192.168.1.1;

}

sudo gedit /etc/default/isc-dhcp-server

INTERFACES="br0"

配置hostapd无线控制:sudo gedit /etc/hostapd/hostapd.conf

interface=wlan0  #无线网卡名称

bridge=br0   # 自定义的

driver=nl80211

ssid=Ubuntu  # 本热点的名称

# country_code=US

hw_mode=g  # 模式

channel=11  # 频道

dtim_period=1

rts_threshold=2347

fragm_threshold=2346

macaddr_acl=0

# accept_mac_file=/etc/hostapd/hostapd.accept #MAC地址限制,需要建立这个文件

# deny_mac_flie=/etc/hostapd/hostapd.deny

auth_algs=3

ieee80211n=1

ht_capab=[HT40-][SHORT-GI-40][DSSS_CCK-40]

wpa=2

wpa_passphrase=88888888  # 热点密码

wpa_key_mgmt=WPA-PSK

wpa_pairwise=TKIP CCMP

rsn_pairwise=CCMP

sudo gedit /etc/default/hostapd

RUN_DAEMON="yes"

DAEMON_CONF="/etc/hostapd/hostapd.conf"

这样设置之后,这两网卡会在network-manager里显示未托管了,但是还能控制剩下那个无线网卡接入断开某个网络。配置dnsmasq需要network-manager禁用dnsmasq-base,默认开启了。sudo geidt /etc/NetworkManager/NetworkManager.conf,注释掉里面的dns=dnsmasq

打开dnsmasq配置文件:sudo gedit /etc/dnsmasq.conf

listen-address=192.168.1.123,127.0.0.1

127.0.0.1是给自己用的,192.168.1.1是给局域网别的机器用

还有dnsmasq本身是带dhcp服务的,这里关掉它

no-dhcp-interface=br0

no-dhcp-interface=lan0

no-dhcp-interface=wlan0

在/etc目录下建立resolv.dnsmasq.conf 文件,并把resolv-file变改文件指向

resolv-file=/etc/resolv.dnsmasq.conf

表示 dnsmasq 会从这个指定的文件中寻找上级 dns 服务器列表,而不是从本机的(resolv.conf)中读取dns服务器列表,如果机器的地址是通过dhcp取得的话,该文件容易受到影响从而影响dnsmasq。

最后,在rc.local文件里加上:

/etc/init.d/isc-dhcp-server start #启动DHCP服务

iptables -t nat -A POSTROUTING -o wlan1 -j MASQUERADE #wlan1网络接入网卡

至此,一台超性能的路由+服务器一体机全部搞定,可惜了,家里装修的时候入网口没在客厅电视柜,否则装个KODI,又是一台HTPC了,而现在只能用来码代码了。

linux软路由设计博客,用Ubuntu来做个软路由相关推荐

  1. OO--第三单元规格化设计 博客作业

    OO--第三单元规格化设计 博客作业 前言 第三单元,我们以JML为基础,先后完成了 PathContainer -> Graph -> RailwaySystem 这是一个递进的过程,代 ...

  2. Web前端开发工程师必读de设计博客

    2019独角兽企业重金招聘Python工程师标准>>> Web设计是一个不断变化的领域,因此掌握最新的发展趋势及技术动向对设计师来说非常重要,无论是学习新技术,还是寻找免费资源与工具 ...

  3. web前端设计师需要常去的15个设计博客资源站

    Web设计是一个不断变化的领域,因此掌握最新的发展趋势及技术动向对设计师来说非常重要,无论是学习新技术,还是寻找免费资源与工具,设计博客都是很不错的去处.本文向大家推荐15个非常不错的设计博客. 1. ...

  4. 国外设计博客小组收集

    16个国外知名设计博客在Flickr 上面创建的小组,找到你感兴趣,为谋. Design Shard | 去这个Flickr小组看看 简介: 这个小组可以展示任何你自己创造或发现的图片艺术,最新的9张 ...

  5. java课程设计 博客园_Java课程设计博客(团队)

    Java课程设计博客(团队) 1. 团队/项目名称 使用JAVA实现简易HTTP服务器 2. 团队成员 组长:林一心 组员:张杭镖 3. 项目git地址 4. 项目git提交记录截图 5. 项目功能架 ...

  6. 20个值得一读的设计博客

    要从因特网上浩如星辰.眼花缭乱的网页设计博客中找到值得一读的,实非易事.为此,我们准备了一张清单,向大家推荐20个网页设计/开发博客.其中一部分相信大家已有耳闻,还有一些虽然名不经传却内容出色,希望大 ...

  7. java设计博客_JAVA课程设计——团队博客

    JAVA课程设计--团队博客 1. 团队名称.团队成员介绍(需要有照片) 团队名称:"小羊吃蓝莓"小游戏 团队成员介绍: 成员 班级 学号 廖怡洁 网络1513 201521123 ...

  8. 数据库设计-博客系统数据库的设计

    数据库设计-博客系统数据库的设计 数据库整体设计 问题: 一个博客系统会有哪些功能呢,肯定会有的是博客列表,博客详情,评论,登陆注册等等这些功能,那应该建多少张表呢?应该给这些表添加哪些字段呢?字段的 ...

  9. linux宝塔搭建网站,宝塔Linux面板搭建网站入门教程五(宝塔Linux面板安装WordPress博客程序)...

    本文于 2021-04-01 00:04 更新,本文內容具有時效性,如有失效,請在博客站內搜相關商家名稱,即可查看到關於此商家的最新優惠活動! 國外商家建議使用"谷歌瀏覽器"訪問, ...

最新文章

  1. Hive数据分析——Spark是一种基于rdd(弹性数据集)的内存分布式并行处理框架,比于Hadoop将大量的中间结果写入HDFS,Spark避免了中间结果的持久化...
  2. 背景图处理,这是个好东西记录一下
  3. linux 真实内存,Linux计算真实可用内存
  4. select count(*)和select count(1)
  5. 打破行业困境,大麦如何引领 NB-IoT 技术创新应用?
  6. Echo团队Alpha冲刺随笔 - 第六天
  7. glassfish3新建domain
  8. WEB自动化(Python+selenium)的API
  9. 物理课上该怎样使用计算机,物理课堂教学中怎样使用演示课件.doc
  10. janusgraph源码分析1-下载编译启动
  11. mac查看图片下一张
  12. RGB565 转 HSV C语言实现
  13. qlv视频怎么转换成mp4格式工厂?如何用格式工厂将qlv格式转换成mp4格式?
  14. 读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。程序输出读到的数据中的奇数和偶数的个数。
  15. 【C语言初阶】求最小公倍数的三种方法
  16. 唯美雪景雪花飘落代码,附效果演示
  17. 什么是动态域名解析服务?
  18. 导入EXCEL2007报错外部表不是预期的格式错误
  19. ddms java 截图_从Android设备获取实时截屏
  20. 编写一个函数isprime(n).判断整数n是否为素数.编写程序使用此函数,当输入一个整数时,对它进行判断,当为素数时,输出1.否则,输出0....

热门文章

  1. 天下武功无坚不破,唯快不破!
  2. java 读取url获取的xml
  3. 华为防火墙基础自学系列 | IKE介绍
  4. 如何用css实现彩带样式,CSS3 彩色丝带
  5. 六大原则之依赖倒转(倒置)原则
  6. Android开发环境搭建+AS常用功能指导
  7. 金融风险管理 思维导图
  8. Linux下rsh服务配置
  9. Photoshop制作圣诞海报
  10. java字符串同构_Java同构代码