zoukankan      html  css  js  c++  java
  • docke跨主机通信之gre隧道

    GRE简介

    GRE可以对网络层的任何协议来进行封装,类似LVS的IPIP协议,在原有的数据报上增加GRE协议数据报。然后在网络上传输,到达对端后,解开GRE数据报头,得到真实的数据报。其中的mac地址也不会因为在网络上传输而丢失原来的源mac地址。

    实验环境

    selinux disabled
    iptables -t nat -F;iptables -F

    主机 docker0地址 物理机地址
    docker1 172.17.0.1 192.168.88.130
    docker2 172.18.0.1 192.168.88.131

    拓扑图
    实验拓扑图

    实验步骤

    • 安装openvswitch

      • yum install gcc make python-devel openssl-devel kernel-devel graphviz kernel-debug-devel autoconf automake rpm-build redhat-rpm-config libtool
      • 构建RPM包:rpmbuild -bb rhel/openvswitch.spec
      • rpm -ihv openvswitch-2.5.0-1.x86_64.rpm
    • 启动openvswitch:service openvswitch start

    • 添加ovs网桥: ovs-vsctl add-br ovs0

    • 构建gre隧道: ovs-vsctl add-port ovs0 gre0 -- set interface gre0 type=gre options:remote_ip=192.168.88.131 #对端物理机网络

    • ovs0桥接到docker0上: brctl addif docker0 ovs0

    • 启动网卡:

      • ip link set dev ovs0 up
      • ip link set dev docker0 up
    • 添加路由:route add -net 172.18.0.0/16 dev docker0 #对端docker0网络

    测试

    docker run -it centos /bin/bash

    ping 对端container的IP

  • 相关阅读:
    2018-8-10-win10-uwp-win2d-使用-Path-绘制界面
    2018-8-10-win10-uwp-win2d-使用-Path-绘制界面
    PHP money_format() 函数
    PHP metaphone() 函数
    PHP md5_file() 函数
    PHP md5() 函数
    PHP ltrim() 函数
    查看统计信息
    CF960F Pathwalks_权值线段树_LIS
    hdu 5691 Sitting in line 状压动归
  • 原文地址:https://www.cnblogs.com/wxl-dede/p/5420833.html
Copyright © 2011-2022 走看看