国内徐庄1.1.1.1     内网地址192.168.0.0/16  gre隧道适配器地址 172.16.0.45

国外2.2.2.2内网地址无 gre隧道地址172.16.0.46
国外 centos6  国内ros

1、查看当前centos版本号
cat /etc/redhat-release
 
2、查看当前CENTOS是否安装防火墙以及状态
service iptables status
如果提示 iptables:unrecognized service 则表示系统尚未安装。
安装防火墙
yum install iptables
 
3、配置防火墙
vi /etc/sysconfig/iptables
 
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
#允许哪些段进行NAT,这里注意-o后面跟的是网卡,要用ifconfig看当前外网IP在哪个网卡上,我这里是eth0。
如果vps有子网卡的情况,比如外网IP是在venet0:0上面,xxx:0,xxx:1等等的时候,注意把-0的接口写到venet0上,而不要写到子接口上 
-A POSTROUTING -s 192.168.0.0/16 -o eth0 -j MASQUERADE
-A POSTROUTING -s 172.0.0.0/8 -o eth0 -j MASQUERADE
COMMIT
 
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
# 允许已建立的或相关连的通行
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#允许本地回环接口
-A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
#允许本机对外访问 
-A OUTPUT -j ACCEPT 
# 允许访问SSH端口,如果端口修改了可以更改相应端口号 
-A INPUT -p tcp --dport 22 -j ACCEPT
#允许公司IP段完全访问centos
-A INPUT -p ALL -s 1.1.1.1/29 -j ACCEPT
#允许公司内网段通过防火墙
-A FORWARD -p ALL -s 192.168.0.0/16 -j ACCEPT
-A FORWARD -p ALL -s 172.0.0.0/8 -j ACCEPT
#禁止TCP新连接以及不存在的连接
-A INPUT -m state --state NEW,INVALID -j DROP
COMMIT
 
重启防火墙
service iptables restart
 
设置防火墙开机就启动
chkconfig iptables on
 
 
4、修改系统内核,允许做为路由转发,修改内核,必须重启生效
vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
 
5、
在rc.local增加建立隧道的命令
vi /etc/rc.local
#建立隧道,本地地址和远程地址
ip tunnel add tunnel0 mode gre remote 1.1.1.1 local 2.2.2.2 ttl 245
#建立隧道的mtu为1400
ip link set tunnel0 up mtu 1400
#隧道地址为172.16.0.46/30
ip addr add 172.16.0.46/30 dev tunnel0
#为公司内网IP增加静态路由表
ip route add 192.168.0.0/16 dev tunnel0
ip route add 172.0.0.0/8 dev tunnel0
 
6、查看当前centos所有TCP,UDP连接的命令
cat /proc/net/nf_conntrack
cat /proc/net/nf_conntrack | grep x.x.x.x
 
在ROS的操作
设置GRE隧道地址 

把隧道地址打上

将源地址是apple.com的打标成APPLE

设置路由表,标签为apple的就走隧道172.16.0.38出去

修改MSS值

修改MSS或者MTU值可能会造成流量变大的情况,但是如果不修改,可能会造成网络能PING通,但是开不了网页,也就是控制包头在1524之内。

VPS(Centos6)连ROS做GRE隧道完整版的更多相关文章

  1. centos6 yum安装mysql 5.6 (完整版)

    使用源代码编译安装mysql还是比较麻烦,一般来说设备安装时请网络同事临时开通linux上网,通过yum网络实现快速安装,或配置yum仓库进行内网统一安装. 通过网络快速安装过程如下 一.检查系统是否 ...

  2. ROS+gre over ipv6,在ipv6的基础上建立GRE隧道

    感谢群众大神 @镜花水月全程技术支持.感谢! 环境: 1.阿里云华北5,申请ipv6测试,申请ECS带ipv6公网ip 2.为了便于测试便捷,在vultr创建2.5美元的vps,带ipv6 对了,测试 ...

  3. VPS CentOS-6 下 LNMP HTTP服务器的搭建

    VPS CentOS-6 下 LNMP HTTP服务器的搭建 前言 恢复更新后的第一篇博文, 前段时间由于各种理由, 把博客更新给宕掉了, 个人独立博客的开发也搁浅了, 现在随着工作的逐步稳定, 决心 ...

  4. Gre 隧道与 Keepalived

    这一篇文章是做了不少功课的. 什么是 Gre 隧道 什么是 Vrrp KeepAlived 是什么 用Keepalived 怎么玩 附录 什么是 Gre 隧道 GRE 隧道是一种 IP-2-IP 的隧 ...

  5. 用 ROS 做内网DNS服务器

    转载:http://iliuyong.iteye.com/blog/1035692 用 ROS 做内网DNS服务器方法:1.ROS 设置IP ->DNS 选择"static" ...

  6. docke跨主机通信之gre隧道

    GRE简介 GRE可以对网络层的任何协议来进行封装,类似LVS的IPIP协议,在原有的数据报上增加GRE协议数据报.然后在网络上传输,到达对端后,解开GRE数据报头,得到真实的数据报.其中的mac地址 ...

  7. linux 下创建GRE隧道

    其他国家的互联网如同一个孤岛.要想访问国外网站异常的缓慢,甚至被和谐了.可以建立一条隧道来避免这种情况,下面说说GRE隧道如何建立. 1. GRE介绍 GRE隧道是一种IP-over-IP的隧道,是通 ...

  8. 内部办公网与IDC机房的GRE隧道配置实践

    背景 公司内网与机房服务器为了实现用内网IP通信的功能,故使用了linux的IP gre隧道的方式.使得公司内部可以直接通过路由直连的方式访问机房服务器. 拓扑图如下: 注:拓扑中的外网IP为虚构的I ...

  9. vxlan中vtep角色,以及通过GRE隧道进行流镜像

    1. 交换机上建立gre隧道,对端ip为ip12. 交换机上报gre隧道的OF逻辑端口port id,这里gre tunnel的id实际就是OF逻辑端口id3. 控制器建立流ipflow1的镜像配置, ...

随机推荐

  1. 【转载】linux fork死循环炸弹及其预防

    转自linux fork死循环炸弹及其预防 在Linux系统下执行这段代码 :(){ :|:& }:: 就会引起死机,一旦执行起来后,唯一的方法就是重启系统.实际上这段代码是一段无限递归代码, ...

  2. codeforces 300 div2 B.Pasha and Phone 容斥原理

    B. Pasha and Phone time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  3. python 字典获取最大和最小的value

    my_dict = {, , } key_max = max(my_dict.keys(), key=(lambda k: my_dict[k])) key_min = min(my_dict.key ...

  4. java反射教程

    什么是反射,为什么它是有用的,以及如何使用它? 1.什么是反射? “反射通常是JVM中运行的程序需要检测和修改运行时程序的行为的一种能力.”这个概念通常与内省(Introspection)混淆.以下是 ...

  5. 操作ACCESS数据库,报INSERT INTO 语句的语法错误

    错误类型:Microsoft JET Database Engine (0x80040E14)INSERT INTO 语句的语法错误. 有时候非常郁闷,明明看起来自己的语句没错,为什么还是报错呢?其实 ...

  6. FindBugs插件的安装与使用

    转载:http://www.cnblogs.com/kayfans/archive/2012/06/18/2554022.html 1 什么是FindBugs FindBugs 是一个静态分析工具,它 ...

  7. Jquery倒计时源码分享

    在静态页添加显示倒计时的容器,并引用下面脚本,代入时间参数即可使用. timeoutDate——到期时间,时间格式为2014/01/01或2014/1/1 D——天 H——小时 M——分钟 S——秒 ...

  8. fatal error: openssl/evp.h: 没有那个文件或目录

    在陆佳华<嵌入式系统软硬件协同设计实战指南 第2版>一书的第13章节 编译U-boot时会遇到2个错误.原因很简单,就从一开始的错误提示着手: fatal error: openssl/e ...

  9. 利用django.core.mail发送QQ邮件的配置

    1.在 settings.py 的最后面加上类似这些 EMAIL_USE_SSL = True EMAIL_HOST = 'smtp.qq.com' # 如果是 163 改成 smtp.163.com ...

  10. grub2 详解

    grub2详解(翻译和整理官方手册)   分类: Linux 基础篇,Linux 杂项   本文原创地址在博客园:https://www.cnblogs.com/f-ck-need-u/archive ...