###################
linux中 ipsec的一些特点..
ipsec通信部分的功能是由linux内核中的模块来实现的. 协商相关的协议(listen udp 500, udp 4500)之类的是支持ike协议的守护进程来实现的.
守护进程部分有几个程序可以选择.
图片来源: http://www.docin.com/p-1200866853.html
SAD ipsec SA设置 ,可以用setkey手动设置.也可以用racoon这样的程序通过协商来进行设置.
SPD 设置哪些数据要通过指定的SA条目进行发送和接收. 可以setkey手动设置. 还没看racoon或是racoon-tool来设置.
###################
我目前对ipsec的认识.
ipsec协议出现得比较早. 它不直接支持vpn接口,路由设置等功通. 从功能上相比是无法和后期的openvpn之类的程序相比.这个问题可能也是往往linux用户不太容易对它太感兴趣. 但很多网络设备,网络安全设备都还支持它.比较习惯使用它.
ipsec协议 相当复杂, 可以支持的网络方案也相对比较多. 学习和实际部署都比较麻烦.
ipsec 使用 ike aggressive 方式协商有点儿安全风险.(忘了看到的网址.)
ipsec协议通过 nat 是比较复杂的. 简单的来说 esp_tunnel方式 与 在其它安全通道中使用ipsec是可行的. 在出口做dnat配合协商的方式还是多少会有问题. ... 这个问题需要继续加深功力才能继续分析.
##################
我感觉ipsec比较有用的网络方案.
在公网之间服务器通信.可以使用手动设置或比较简单的设备. 保证服务器之间通信的安全性.比如为SQL数据库服务器提供安全通信方案时.
在其他VPN通道中使用ipsec实现加密.(实际应用应该是套在其它vpn协议外层的.)
和windows客户机或其它操作系统组建接入网络. 感觉复杂程度也是相当高.
与其他网络设备,网络安全设备对接. 这个有点儿话提太大了..
#################
其它信息.
intel cpu有些包领导了 aes加密指定. 这会不会使ipsec使用aes通信加速? 希望有时间测试试一下.
ipsec 的设置和组网方式. 种类太多了! 协议相关的rfc也实在是太多了!