1. VyOS简介

VyOS是一个开源的网络操作系统,可以安装在物理硬件上,也可以安装在你自己的虚拟机上,或者是一个云平台上。它基于GNU/Linux,并加入了多个应用程序,如:Quagga, ISC DHCPD, OpenVPN, StrongS/WAN等,以及其他的管理界面。

VyOS系统安装最低要求512M内存和2G存储即可。

2. 实验需求

最近工作中需要用到vyos软路由,现将工作中搭建的过程总结如下。

vyos开启dhcp,开启80和21端口转发

3. 环境准备

机器名称 配置 系统 地址 备注
vyos 2C4G

vyos-1.1.7

eth0 172.16.0.99

eth1 192.168.10.1

两块网卡,eth0为外网,可以连接internet,eth1为内网
vm1 2C4G centos7.4 dhcp获取 一块网卡
vm2 2C4G centos7.4 192.168.10.150 一块网卡

4. 实验拓扑

说明:

1.vyos开启dhcp,80端口转发和21端口转发

2.vm1 dhcp获取地址

3.vm2 配置静态地址,开启web服务和ftp服务

5. 基本设置

5.1 查看设置

# 查看全部设置

vyos@vyos:~$ show configuration

# 匹配查询

vyos@vyos:~$ show configuration commands | match eth0

# 查看网卡设置

vyos@vyos:~$ show interfaces

5.2 配置网卡

# 进入配置模式

vyos@vyos:~$ configure

# 设置网卡描述

vyos@vyos# set interfaces ethernet eth0 description 'PUBLIC NETWORK'

vyos@vyos# set interfaces ethernet eth1 description 'PRIVATE NETWORK'

# 配置ip地址

vyos@vyos# set interfaces ethernet eth0 address 172.16.0.99/24

vyos@vyos# set protocols static route 0.0.0.0/0 next-hop '172.16.0.254'

vyos@vyos# set interfaces ethernet eth1 address 192.168.10.1/24

# 开启ssh

vyos@vyos# set service ssh port '22'

# 保存配置

vyos@vyos# commit

vyos@vyos# save

5.3 配置dns转发

vyos@vyos# set service dns forwarding cache-size '0'

vyos@vyos# set service dns forwarding listen-on eth0

vyos@vyos# set service dns forwarding listen-on eth1

vyos@vyos# set service dns forwarding name-server '114.114.114.114'

vyos@vyos# set service dns forwarding name-server '8.8.8.8'

vyos@vyos# commit

vyos@vyos# save

5.4 配置dhcp服务

vyos@vyos# set service dhcp-server disabled 'false'

vyos@vyos# set service dhcp-server shared-network-name LAN description 'LAN DHCP'

vyos@vyos# set service dhcp-server shared-network-name LAN subnet 192.168.10.0/24 default-router 192.168.10.1

vyos@vyos# set service dhcp-server shared-network-name LAN subnet 192.168.10.0/24 start 192.168.10.100 stop 192.168.10.200

vyos@vyos# set service dhcp-server shared-network-name LAN subnet 192.168.10.0/24 lease '86400'

vyos@vyos# set service dhcp-server shared-network-name LAN subnet 192.168.10.0/24 dns-server 192.168.10.1

vyos@vyos# commit

vyos@vyos# save

5.5 配置内网出公网

vyos@vyos# set nat source rule 100 description 'TO INTERNET'

vyos@vyos# set nat source rule 100 source address 192.168.10.0/24

vyos@vyos# set nat source rule 100 outbound-interface eth0

vyos@vyos# set nat source rule 100 translation address 172.16.0.99

vyos@vyos# commit

vyos@vyos# save

5.6 配置web转发

vyos@vyos# set nat destination rule 1000 description "WEB SERVER"

vyos@vyos# set nat destination rule 1000 inbound-interface eth0

vyos@vyos# set nat destination rule 1000 destination address 172.16.0.99

vyos@vyos# set nat destination rule 1000 source address 0.0.0.0/0

vyos@vyos# set nat destination rule 1000 destination port 80

vyos@vyos# set nat destination rule 1000 protocol tcp

vyos@vyos# set nat destination rule 1000 translation address 192.168.10.150

vyos@vyos# set nat destination rule 1000 translation port 80

vyos@vyos# commit

vyos@vyos# save

5.7 配置ftp转发

vyos@vyos# set nat destination rule 1001 description "FTP SERVER"

vyos@vyos# set nat destination rule 1001 inbound-interface eth0

vyos@vyos# set nat destination rule 1001 destination address 172.16.0.99

vyos@vyos# set nat destination rule 1001 protocol tcp

vyos@vyos# set nat destination rule 1001 source address 0.0.0.0/0

vyos@vyos# set nat destination rule 1001 destination port 21

vyos@vyos# set nat destination rule 1001 translation address 192.168.10.150

vyos@vyos# set nat destination rule 1001 translation port 21

vyos@vyos# commit

vyos@vyos# save

5.8 测试检查

vm1设置网卡dhcp,重启网卡。发现可以获取到ip192.168.10.100,并可以连接外网

vm2设置网卡静态ip地址,重启网卡。并开启web和ftp服务

测试成功转发

参考资料

https://vyos.io/

https://wiki.vyos.net/wiki/User_Guide

VyOS软路由系统基本设置的更多相关文章

  1. [转帖]pfSense软路由系统的使用

    图解pfSense软路由系统的使用(NAT功能) http://seanlook.com/2015/04/23/pfsense-usage/  发表于 2015-04-23 |  更新于: 2015- ...

  2. 攻防组网之—-MikroTik软路由的配置和FUZZ

    作者:红发香克斯 开篇之前一直想借助一台高性能PC利用VMWare组建一个攻防网络,之前有一贴写过找到了一个软路由系统,就是可以在VMWare中使用的路由器操作系统,那个系统还挺常用,上次帖子写到了安 ...

  3. K8S集群搭建之软路由的安装

    一.系统要求 ①镜像:win10 ②1C.4G.20G即可 ③仅主机模式(共享网卡上网) ④老毛桃PE ⑤ip为192.168.66网段(因为我设置的其他K8S节点也为该网段)---koolshare ...

  4. 吐血原创:mini2440和win7笔记本利用无路由功能的交换机共享上网(使用x-router软路由)

    真的是要吐血了,为了使自己的win7系统笔记本和mini2440,通过交换机(没有路由功能,才5口,和HUB差不多)共享宽带上网,并且连接上的宽带还是长城宽带,我用尽各种cmd命令都查不到长城宽带的默 ...

  5. 海蜘蛛网络科技官方网站 :: 做最好的中文软路由 :: 软件路由器 :: 软路由 :: 软件路由 :: RouterOs

    海蜘蛛网络科技官方网站 :: 做最好的中文软路由 :: 软件路由器 :: 软路由 :: 软件路由 :: RouterOs 企业简介 武汉海蜘蛛网络科技有限公司成立于2005年,是一家专注于网络新技术研 ...

  6. x86主机搭建家庭智能路由系统 ---- 设计篇

    组件简介 Proxmox: 基于Debian的虚拟化系统,支持OpenVZ和KVM. pfSense: 基于FreeBSD的开源路由系统. FreeNAS: 开源NAS系统. shadowsocks: ...

  7. RouterOS 5.16软路由安装图解教程

    说明:RouterOS是一种路由器操作系统,它可以安装到普通的个人电脑上面,替代硬件路由器 RouterOS版本:RouterOS 5.16 硬件要求: 1.支持多核CPU 2.内存最大支持到2G 3 ...

  8. 虚拟机(VM)安装openwrt-koolshare软路由

    ⒈创建虚拟机 **软路由选择Windows操作系统,因为我们需要在PE环境中进行软路由的写入,固件类型选择BIOS,网络类型选择使用仅主机模式网络,虚拟磁盘类型选择IDE[一定要选择IDE模式],SC ...

  9. 软路由OpenWrt(LEDE)2020.5.10更新 UPnP+NAS+多拨+网盘+DNS优化

    近期更新:2020.05.10更新-基于OpenWrt R2020.5.9版本,源码截止2020.05.10.   交流群:QQ 1030484865 电报 t.me/t_homelede   版本说 ...

随机推荐

  1. jmeter控制器入门笔记一

    @@@@@@@@@@@@@@@ 千里之行 今天记录一下个人才使用控制器时的一些心得.逻辑控制器在jmeter中有很多种,个人根据官方解释理解的作用就是:通过控制器可以更好地控制请求的执行顺序.jmet ...

  2. Java语言概述_章节练习题及面试

    学于尚硅谷开源课程 宋洪康老师主讲 感恩 尚硅谷官网:http://www.atguigu.com 尚硅谷b站:https://space.bilibili.com/302417610?from=se ...

  3. CSS两列布局的N种实现

    一.什么是两列布局 两列布局分为两种,一种是左侧定宽.右侧自适应,另一种是两列都自适应(即左侧宽度由子元素决定,右侧补齐剩余空间).在CSS面试题里面属于常考题,也是一个前端开发工程师必须掌握的技能, ...

  4. PHP date_default_timezone_get() 函数

    ------------恢复内容开始------------ 实例 返回默认时区: <?phpecho date_default_timezone_get();?> 运行实例 » 定义和用 ...

  5. PHP scandir() 函数

    ------------恢复内容开始------------ 实例 列出 images 目录中的文件和目录: <?php$dir = "/images/"; // Sort ...

  6. Redis 内存压缩原理

    Redis 无疑是一个大量消耗内存的数据库,因此 Redis 引入了一些设计巧妙的数据结构进行内存压缩来减轻负担.ziplist.quicklist 以及 intset 是其中最常用最重要的压缩存储结 ...

  7. 【NOI2016】区间 题解(线段树+尺取法)

    题目链接 题目大意:给定$n$个区间$[l_i,r_i]$,选出$m$个区间使它们有一个共同的位置$x$,且使它们产生的费用最小.求最小费用.费用定义为最长的区间长度减去最短区间长度. ------- ...

  8. Android Studio--家庭记账本(六)

    (Android studio家庭记账本源码已上传至github,https://github.com/xhj1074376195/CostBook_app) 今天记账本终于可以算是完成了,实现了账户 ...

  9. MapReduce之自定义OutputFormat

    @ 目录 OutputFormat接口实现类 自定义OutputFormat使用场景及步骤 使用场景 自定义OutputFormat 案例实操 OutputFormat接口实现类 OutputForm ...

  10. 简单认识JAVA内存划分

    Java的内存划分为五个部分 那么又是哪五个部分呢?跟着我往下看! 介绍: 每个程序运行都需要内存空间,所以Java也不例外:而Java把从计算机中申请的这一块内存又进行了划分!而所在目的是为了让程序 ...