vpdn路由学习

一,需求

        需要自己搭建VPDN的LAC,LNS。

二,实现方法

        使用softether搭建客户端、服务端和内网设备,分别部署在三台服务器上,具体组网如下。

        

        131作vpdn服务端。133作为客户端。132作为内网设备。131的eno2接132的eno2。

        现在的目标是,希望133客户端能否和132内网设备进行通讯。

        准备将VPN的IP配置为192.16.1.1

Centos7.5 系统使用L2TP/IPSec搭建服务器 - 菜鸟学院 先参考再说

三,环境配置

   三台服务器都安装CentOS Linux release 7.9.2009系统。

    系统工具安装
        yum -y install gcc zlib-devel openssl-devel readline-devel ncurses-devel
        yum -y install wget
        yum -y install net-tools
        yum -y install traceroute
    
    服务端安装
        1.  wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/tag/v4.41-9782-beta/softether-vpnserver-v4.41-9782-beta-2022.11.17-linux-x64-64bit.tar.gz
        2.  tar -zxvf softether-vpnserver-v4.41-9782-beta-2022.11.17-linux-x64-64bit.tar.gz
        3.  cd vpnsever/
        4.  make
        
    客户端安装
        1.  wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/tag/v4.41-9782-beta/softether-vpnclient-v4.41-9782-beta-2022.11.17-linux-x64-64bit.tar.gz
        2.  tar -zxvf softether-vpnclient-v4.41-9782-beta-2022.11.17-linux-x64-64bit.tar.gz
        3.  cd vpnclient/
        4.  make

 wget有时候下载不成功,原因懒得排查,直接网页下载后拷贝进去也行。

实际发现,上面的编译成功后虽然能够运行,但是并不包含代码,重新下载。

需要安装perl5,openssl1.1.1,添加到路径,ldconfig后,然后再下载ttps://www.softether-download.com/files/softether/v4.43-9799-beta-2023.08.31-tree/Source_Code/softether-src-v4.43-9799-beta.tar.gz解压后进行编译。

编译报错

Encrypt.c:(.text+0x19be):对‘HMAC_CTX_new’未定义的引用

找到HMAC_CTX_new是在openssl中定义的。也就是说编译的时候用的是旧版本的openssl,导致异常。需要链接到新的openssl,修改默认Makefile ,新增 -L /usr/local/lib64/

四,VPDN配置

4.1 server配置

先启动server bin/vpnserver/vpnserver start

bin/vpnserver/vpncmd

默认可以创建一个

1,创建hub

VPN Server>HubCreate
HubCreate 命令 - 创建新的虚拟 HUB
新创建的虚拟 HUB 的名字: SCSHUB

请输入密码。要取消,请按下 Ctrl + D 键。

密码    : ******
确认输入: ******
 

2. 输入HUB进入hub配置界面

VPN Server/SCSHUB>SecureNatHostSet
SecureNatHostSet 命令 - 更改安全网络功能的虚拟主机的网络接口设置
MAC 地址: 5E-3B-8E-CA-DA-31

IP 地址: 192.168.31.1

子网掩码: 255.255.255.0

VPN Server/SCSHUB>SecureNatEnable

3. 添加用户

VPN Server/SCSHUB>UserCreate
UserCreate 命令 - 创建用户
用户名: 132

加入群组名称:

用户全名: scs132

用户描述:命令成功完成。

VPN Server/SCSHUB>UserList
UserList 命令 - 获取用户列表
项目        |价值
------------+--------
用户名      |132
全名        |scs132
所属组      |-
描述        |
认证方法    |密码验证
登录回数    |0
上次登录时间|(无)
有效期      |没有到期
传输字节    |0
传输数据包  |0
命令成功完成。

VPN Server/SCSHUB>UserPasswordSet

添加密码

4,配置地址分发范围

VPN Server/SCSHUB>DhcpSet
DhcpSet 命令 - 更改安全网络功能的虚拟 DHCP 服务器功能的设置
分发地址范围的开始: 192.168.31.10

分发地址范围的结束: 192.168.31.200

子网掩码: 255.255.255.0

租赁期限 (补): 7200

默认网关 (可以不设定): 192.168.31.1

DNS 服务器 1 (可以不设定): 192.168.31.1

DNS 服务器 2 (可以不设定):

域名:

保存日志 (yes/no): yes

命令成功完成。

5,NAT设置

enable即可。

4.2 client配置

 bin/vpnclient/vpnclient start

然后bin/vpncmd/vpncmd 2 localhost NicCreate 

VPN Client>NIClist
NicList 命令 - 获取虚拟 LAN 卡列表
项目            |价值
----------------+----------------------------------------------
虚拟网络适配器名|SCS_LAN
状态            |已启用
MAC 地址        |5E43B944DB6C
版本            |Version 4.29 Build 9680   (Simplified_Chinese)

accountcreate

AccountPasswordSet

VPN Client>accountlist
AccountList 命令 - 获取连接设置列表
项目                   |价值
-----------------------+---------------------------------------
VPN 连接设置名称       |133
状态                   |已连接
VPN Server 主机名(地址)|172.16.138.131:443 (直接的 TCP/IP 连接)
虚拟 HUB 名称          |SCS
虚拟网络适配器名       |SCS_LAN

dhclient vpn_scs_lan(这一步有可能不成功,需要先杀掉dhclient再试一下)

10.129.60.0/22 via 172.16.138.254 dev eno1
172.16.118.0/24 via 172.16.138.254 dev eno1
172.16.138.0/24 dev eno1 proto kernel scope link src 172.16.138.133
192.168.30.0/24 dev vpn_scs_lan scope link src 192.168.30.10

ip a
8: vpn_scs_lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000
    link/ether 5e:43:b9:44:db:6c brd ff:ff:ff:ff:ff:ff
    inet 192.168.30.10/24 brd 192.168.30.255 scope global dynamic vpn_scs_lan
       valid_lft 6058sec preferred_lft 6058sec
    inet6 fe80::5c43:b9ff:fe44:db6c/64 scope link
       valid_lft forever preferred_lft forever

遗留问题一,怎么在服务端造出内网设备???

Server端重新配置,删除NAT和DHCP功能。

创建网桥,连接虚拟 Hub 与 物理网卡

VPN Server>BridgeCreate
BridgeCreate command - Create Local Bridge Connection
Virtual Hub Name to Create Bridge: vpn #指定网桥要连接的虚拟 Hub
 
Bridge Destination Device Name: enp2s0 #指定网桥要连接的物理网卡

前面的交换机也换成能够分配地址的路由器。

遗留问题二,

现在131服务端ip1 172.16.138.131 dev eno1 ,ip2 10.16.1.131 dev enp2s0

现在133客户端ip1 172.16.138.133 dev eno1 ,ip2 10.16.1.133 dev enp2s0

现在132内网设备 ip1 172.16.138.132 dev eno1 ,ip2 10.16.1.132 dev enp2s0

132内网设备可以ping通 10.16.1.131,10.16.1.1,10.16.1.133

131服务端可以ping通10.16.1.1,10.16.1.132,无法pin通10.16.1.133

133客户端可以ping通10.16.1.1,10.16.1.132,无法pin通10.16.1.131

这是为什么?




 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值