张 永 一个梦想自由的程序员

——————————————— 让科技和智能使人更便捷 ———————————————
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

(转) 很实用的网络技术方案

Posted on 2019-08-27 10:10  hylas  阅读(148)  评论(0编辑  收藏  举报

 建议直接看原帖 http://blog.chinaunix.net/uid-15790905-id-5169813.html

 


题记:
在大公司,想吃鸡蛋就有鸡蛋;在小公司,想吃鸡蛋你得先养一只鸡。。
原本,我只是想把内部的系统域名变成内网域名,毕竟把监控、部署系统以及中控机的地址暴露在公网总感觉不踏实。
但问题来了,挖掘机技术... 说错,在家怎么访问阿里云的内网地址呢? 嗯,可以用VPN,但VPN完全没搞过啊,我想我是被前厂惯坏了..

我们的公司现状:
1. 线上服务器托管在阿里云上
2. 办公网有部分机器,提供svn, 编译等服务
3. 在家不能上办公网,想提几行代码,不好意思,去趟公司吧
4. 在家/在公司都不能直接访问阿里云的内网(10.x.x.x)地址,我们都是公网地址,囧

整理并细化我的需求:

1. 在家 连接vpn能访问办公网(172网段)
2. 在家/在公司 连接vpn能直接访问阿里云内网服务和机器(10网段)
3. 访问办公网和阿里云两个局域网地址只需要连一次vpn
4. vpn通过用户名和密码登陆

设计方案:
需要连两个vpn(办公网一个、阿里云一个)的方案直接fail, 不要搞那么复杂。
希望可以是这样的,YY图如下,


技术选型: openvpn
核心技术: 虚拟网卡,隧道,iptables,ssl

补充说明: 
整个方案亲测有效,摸索了很久,各种中英文搜索。所以你的模式应该是这样的
while(搞不定) { 
   sleep; 
   retry; 
   if(搞定了?) {
       break;
   }
}

从开始明确需求,到一步步实现,汇总如下,其实是挺有逻辑性的。