softether : https://www.softether-download.com/cn.aspx?product=softether
Ubuntu
1、在Softether VPN Server Manager里面关闭禁用“SecureNAT”
2、添加网卡 在“本地网桥”里面添加新的tap设备“soft”
3、输入命令:ifconfig tap_soft,如果可以看到tap_soft网卡信息,那么可以进行下一步,否则看看上面步骤是不是哪里出错了
4、删除bind服务,安装dnsmasq服务
sudo apt-get -y purge bind9-* sudo apt-get install dnsutils dnsmasq
5、配置dnsmasq,编辑/etc/dnsmasq.conf,在其中加入:+
interface=tap_soft dhcp-range=tap_soft,192.168.8.50,192.168.8.90,12h dhcp-option=tap_soft,3,192.168.8.1 dhcp-option=option:dns-server,192.168.8.1 resolv-file=/etc/resolv.dnsmasq.conf strict-order listen-address=0.0.0.0,::
4-7行,如果部署后,可以连上,但是显示连接受限,可以把第四行改为8.8.8.8,8.8.4.4;5行以后的删除或者注释掉,重启dnsmsq服务即可
6、然后再编辑/etc/resolv.dnsmasq.conf(如果没有则创建),其中加入:
nameserver 8.8.8.8 nameserver 208.67.222.222 nameserver 156.154.70.1 nameserver 198.153.192.1 nameserver 114.114.114.114 #或者加入你喜欢的dns
7、softetherserver配置,编辑/etc/init.d/vpnserver,删除之前的所有配置,改为:
#!/bin/sh ### BEGIN INIT INFO # Provides: vpnserver # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start daemon at boot time # Description: Enable Softether by daemon. ### END INIT INFO DAEMON=/root/vpnserver/vpnserver LOCK=/var/lock/subsys/vpnserver TAP_ADDR=192.168.8.1 test -x $DAEMON || exit 0 case "$1" in start) $DAEMON start touch $LOCK sleep 1 /sbin/ifconfig tap_soft $TAP_ADDR ;; stop) $DAEMON stop rm $LOCK ;; restart) $DAEMON stop sleep 3 $DAEMON start sleep 1 /sbin/ifconfig tap_soft $TAP_ADDR ;; *) echo "Usage: $0 {start|stop|restart}" exit 1 esac exit 0
8、iptables配置,编辑/etc/sysctl.conf,加入:net.ipv4.ip_forward = 1,然后运行sysctl -p,同步保存配置。
OVZ设置方式如下
iptables -t nat -A POSTROUTING -s 192.168.8.0/24 -j SNAT --to-source xxx.xxx.xxx.xxx #这里的xxx.xxx.xxx.xxx改为你服务器的公网ip
KVM设置如下:
iptables -t nat -A POSTROUTING -s 192.168.8.0/24 -o eth0 -j MASQUERADE
9、然后重启dnsmasq和vpnserver服务:
sudo /etc/init.d/vpnserver restart sudo /etc/init.d/dnsmasq restart Ubuntu默认占用53端口 dnsmasq 可能会启动失败
可以选择修改systemd-resolved
的配置来避免这个冲突。具体步骤如下:
- 打开
systemd-resolved
的配置文件:
sudo nano /etc/systemd/resolved.conf
-
在这个文件中找到
#DNSStubListener=yes
这一行,将其修改为DNSStubListener=no
。这将会让systemd-resolved
停止监听53端口。 -
保存并关闭文件。
-
重启
systemd-resolved
服务:
sudo systemctl restart systemd-resolved
现在,systemd-resolved
应该不再占用53端口,可以尝试再次启动dnsmasq
。