Centos7搭建软路由
Xenserver环境:
一:环境准备
内网:192.168.2.100
外网:x.x.x.x
1.1:登陆XenCenter
1.2:进入Xenserver中的Networking选项
1.3:点选下边的Configure...按钮,进入Configure IP Addresses对话框
1.4:点选Add IP address新建虚拟交换机

1.5:Network 1 网卡连接外网
Network 2 网卡连接内网虚拟交换机
二:建立Centos7虚拟机并配置网卡
2.1:vim /etc/sysconfig/network-scripts/ifcfg-eth1
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
#BOOTPROTO=dhcp
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth1
#UUID=dd48994a-7f5c-44c1-a8d3-107f4e4b579f
DEVICE=eth1
#ONBOOT=no
ONBOOT=yes
IPADDR=x.x.x.x(固定IP或可联通外网的IP)
NETMASK=255.255.255.x
GATEWAY=x.x.x.x
DNS1=8.8.8.8
DNS2=x.x.x.x
2.2:vim /etc/sysconfig/network-scripts/ifcfg-eth2
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
#BOOTPROTO=dhcp
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth3
#UUID=34b419e0-ca01-4ca4-964b-45d2a9973002
DEVICE=eth3
#ONBOOT=no
ONBOOT=yes
IPADDR=192.168.2.100
NETMASK=255.255.255.0
2.3:ping baidu.com
三:配置ipv4转发
3.1:查看IPv4转发状态,默认为0即关闭状态
cat /proc/sys/net/ipv4/ip_forward
3.2:开启转发
echo 1 > /proc/sys/net/ipv4/ip_forward
四:借助iptables做地址转发:
4.1:配置iptables做SNAT,基于源的数据包转发
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source x.x.x.x
4.2:192.168.2.0网段的虚拟机,需要上外网,只要把网关配置成192.168.2.100即可
五:加开机运行:
5.1:为了防止重启后这些配置失效,将这两条命令加入到rc.local中,使其开机自动运行,
vim /etc/rc.d/rc.local
#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot. touch /var/lock/subsys/local
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source x.x.x.x
5.2:因为CentOS7开始,rc.local默认没有执行权限,还要加一条命令
chmod +x /etc/rc.d/rc.local
重启测试:reboot
六:iptables配置:
vim iptables.sh
#!/bin/sh
iptables -F
iptables -X
iptables -Z
iptables -P INPUT ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -s x.x.x.x -j ACCEPT
iptables -A INPUT -s 192.168.2.0/24 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type any -j ACCEPT
#iptables -A INPUT -p udp -m udp --dport 67 --in-interface xenapi -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source x.x.x.x
iptables -t nat -A PREROUTING -i eth1 -p tcp -d x.x.x.x --dport 30022 -j DNAT --to-destination 192.168.2.100:22
iptables -A FORWARD -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
service iptables save
systemctl restart iptables.service
注意:
iptables -P INPUT ACCEPT这条规则必须先运行,否则会连接不上
iptables -A FORWARD -j ACCEPT这条规则与POSTROUTING配套使用
开启ip转发:
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source x.x.x.x
写入开机启动:
chmod +x /etc/rc.d/rc.local
echo 1 > /proc/sys/net/ipv4/ip_forward
端口转发:
iptables -t nat -A PREROUTING -i eth1 -p tcp -d x.x.x.x --dport 30022 -j DNAT --to-destination 192.168.2.100:22
Centos7搭建软路由的更多相关文章
- K8S集群搭建之软路由的安装
一.系统要求 ①镜像:win10 ②1C.4G.20G即可 ③仅主机模式(共享网卡上网) ④老毛桃PE ⑤ip为192.168.66网段(因为我设置的其他K8S节点也为该网段)---koolshare ...
- 虚拟机搭建IKUAI软路由
1.登录爱快软路由的官网下载镜像(支持ISO ,GHO),这里采用iso安装 2.选择好后开机(选择数字编号1,回车) 3.输入“y”回车,程序自动安装 4.安装成功后如图 5.设置IP 6.绑定网卡 ...
- CentOS7搭建FastDFS V5.11分布式文件系统及Java整合详细过程
1.1 FastDFS的应用场景 FastDFS是为互联网应用量身定做的一套分布式文件存储系统,非常适合用来存储用户图片.视频.文档等文件.对于互联网应用,和其他分布式文件系统相比,优势非常明显.其中 ...
- VyOS软路由系统基本设置
1. VyOS简介 VyOS是一个开源的网络操作系统,可以安装在物理硬件上,也可以安装在你自己的虚拟机上,或者是一个云平台上.它基于GNU/Linux,并加入了多个应用程序,如:Quagga, ISC ...
- [转帖]pfSense软路由系统的使用
图解pfSense软路由系统的使用(NAT功能) http://seanlook.com/2015/04/23/pfsense-usage/ 发表于 2015-04-23 | 更新于: 2015- ...
- CentOS7搭建OpenVPN
目录 CentOS7搭建OpenVPN 环境 安装 第一步.安装openvpn及所需软件 第二步.编辑vars文件,根据自己环境配置 第三步.创建服务端证书及key 第四步.创建客户端证书 第五步.拷 ...
- 软路由OpenWrt(LEDE)2020.5.10更新 UPnP+NAS+多拨+网盘+DNS优化
近期更新:2020.05.10更新-基于OpenWrt R2020.5.9版本,源码截止2020.05.10. 交流群:QQ 1030484865 电报 t.me/t_homelede 版本说 ...
- 软路由OpenWrt(LEDE)2020.4.6编译 UnPnP+NAS+多拨+网盘+DNS优化
近期更新:2020.04.06编译-基于OpenWrt R2020.3.19版本,源码截止2020.04.06. 2020.04.06更新记录: 以软件包形式提供ServerChan(微信推送) ...
- 软路由OpenWrt(LEDE)2020.4.4编译 UnPnP+NAS+多拨+网盘+DNS优化
近期更新:2020.04.24编译-基于OpenWrt R2020.3.19版本. 2020.04.04更新记录: 修正国内域名加速脚本部分缺陷 内置打印机共享,ZeroTier 新增多套主题 S ...
随机推荐
- 雷林鹏分享:XML 命名空间
XML 命名空间 XML 命名空间提供避免元素命名冲突的方法. 命名冲突 在 XML 中,元素名称是由开发者定义的,当两个不同的文档使用相同的元素名时,就会发生命名冲突. 这个 XML 携带 HTML ...
- 使用validateXxx()方法进行输入校验 --Struts2框架
1.本例是在使用validate()方法进行输入校验 --Struts2框架的基础上接着做的,上一篇使用validate()方法进行输入校验时会对当前Action中的所有方法有效,由于Struts2框 ...
- 20180831xlVBA_WorkbooksCosolidate
Sub WorkbooksConsolidate() Rem 设置求和区域为 sheet名称/单元格区域;sheet名称/单元格区域 Const Setting As String = "S ...
- canvas手机端绘图解决方案
解决方案js:https://pan.baidu.com/s/1jIys2aU 我们使用canvas通常会遇到一个问题就是坐标系的问题,如果按象限来说,一般canvas是在第四象限,但是我们通常都喜欢 ...
- 微信小程序页面内转发 按钮 转发
通过给 button 组件设置属性 open-type="share",可以在用户点击按钮后触发 Page.onShareAppMessage() 事件,如果当前页面没有定义此事件 ...
- wdcp环境redis的位置
- 4月12 php练习
php中输出 <?php echo'hello'; php中打印多个div <?php for($i=1;$i<=100;$i++) { ?> <div style=&q ...
- 3月26 document的练习
1.Window.document对象 一.找到元素: docunment.getElementById("id"):根据id找,最多找一个: var a =docunme ...
- ASP.NET 后台页面无法识别服务器控件ID
在学习asp.net 的时候 发现有个页面服务器控件无法识别,提示未知元素 解决方法 将不能识别服务器控件ID 的后台文件 类名改写,重新生成一次. 然后再改回来就可以了.
- 17. Letter Combinations of a Phone Number C++回溯法
简单的回溯法! class Solution { public: void backTrack(string digits, vector<string> words, string an ...