本文详细介绍Linux系统中安装并使用wireguard实现组网的方法,主要针对没有公网IP且不支持IPv6的宽带环境,提供内网穿透解决方案。通过将家里的服务器与具有公网IP的云服务器组网,实现内网穿透功能。以下为wireguard的安装步骤和两种常用的组网方式。
在进行wireguard安装前,需确保内核版本达到5.0及以上,以满足wireguard运行需求。对于CentOS 7系统用户,需进行内核版本升级。安装wireguard涉及以下步骤:开启IPV4流量转发功能(仅公网IP服务器需配置)、修改默认内核版本(对于5.0以上内核版本,此步骤可跳过)、重启服务器以及最终安装wireguard。
本文重点介绍两种组网方式,满足工作与学习需求。以三个不同局域网的节点为例,详细阐述配置方法。
### 直连方式组网
在直连方式中,peer2和peer3可通过组网IP互相访问,实现任意节点间的互相访问。流量主要通过Peer1服务端转发实现,因此需确保Peer1服务端开启内核流量转发功能。具体配置步骤如下:
Peer1服务端配置:
在wg0.conf配置文件中添加相关配置信息。
Peer2、Peer3节点配置:
同样在wg0.conf配置文件中添加对应配置信息。
直连方式下,Peer2与Peer3配置除了组网IP和私钥不同,其他配置相同,流量通过Peer1转发,实现Peer2与Peer3直接通过组网IP相互访问。
### Peer2转发流量至内网设备
在实现内网穿透的基础上,为简化配置并允许所有内部局域网设备通过单一Peer访问,可将Peer2作为内部局域网wireguard组网的网关。配置步骤如下:
Peer1配置优化:
调整配置以支持通过Peer2访问内部设备。
Peer2配置优化:
优化Peer2配置,使其作为内部局域网的网关。
Peer3配置优化:
Peer3配置需允许通过内部局域网IP访问内网设备。
配置完成后,重启三台设备的wireguard服务,即可实现Peer1和Peer3通过内部设备IP直接访问Peer2内部局域网设备的功能。