我简单解释一下IP连接的原理:
1. 用户登陆SSL VPN页面后,会建立HTTPS会话,服务器通过这个会话给用户自动加载SSL VPN客户端程序;
2.此时的SSL VPN客户端程序的目的是给用户PC创建一个虚拟网卡;
3.虚拟网卡创建好后,服务器会给该用户从地址池中取一个地址分配给该用户,同时下发路由、DNS等信息,服务器针对该地址池也会有一个服务器地址10.103.0.1,作为所有客户端程序虚拟网卡的网关;
4.此时SSL VPN客户端程序与服务器之间会建立一个全新的SSL会话,专门用来传输虚拟网卡与服务器之间的流量;
5.假设用户要访问统一登录平台172.153.254.56,根据路由的关系,PC会通过虚拟网卡将请求(源10.103.0.7 目的172.153.254.56)转发给SSL VPN服务器10.103.0.1; 6.PC上的SSL VPN客户端程序会将虚拟网卡发出的IP包封装至新的SSL会话中,通过互联网传送到服务器;
7.服务器进行解封装,解封装后发现IP目的地址是172.153.254.56,那么就转发给统一登录平台服务器;
我再从数据封装的角度分析一下:
假设我司有SSLVPN服务器公网地址为1.1.1.1,服务器虚拟网卡的地址为10.103.0.1 公司有内部服务器地址为192.168.1.2,通过UDP 65访问
我的电脑公网IP为2.2.2.2 ,通过SSL客户端获取的虚拟网卡的IP地址为10.103.0.7 SSL 客户端的登录端口为6443 1. PC发数据包
(源10.103.0.7 UDP 1024 -)目的192.169.1.2 UDP 65)
2. 经过SSL VPN客户端(原IP数据包被封装在新IP数据包内) (源2.2.2.2 TCP1035-)目的1.1.1.1 TCP 6443)
3. 通过Internet到达对端公司的SSL VPN服务器(原IP数据包被解封装出来) (源10.103.0.7 UDP 1024 -)目的192.169.1.2 UDP 65) 4. 内部服务器回应PC
(源192.169.1.2 UDP 65 -)目的10.103.0.7 UDP 1024)
5. 经过SSL VPN服务器(原回应IP数据包被封装在新IP数据包内) (源1.1.1.1 TCP 6443 -)目的2.2.2.2 TCP1035)
6. 通过Internet到达对端PC的SSLVPN客户端(原回应IP数据包被解封装出来) (源192.169.1.2 UDP 65 -)目的10.103.0.7 UDP 1024)
因篇幅问题不能全部显示,请点此查看更多更全内容