Necesita un ||true
para asegurarse de que el primer comando siempre devuelva el éxito.
Puede evitar la necesidad de pgrep
desechando stderr; p.ej.
test: client server
killall myserver 2>/dev/null || true
myserver --background
myclient --server 127.0.0.1
Я столкнулся с той же проблемой -мой сервер, также известный как "Wireguard SRV" на диаграмме (= Centos8, с iptables и ferm )не маршрутизирует трафик.
Проблема :Я забыл sysctl -w net.ipv4.ip_forward=1
.
Но это была не единственная проблема -ip route add...
, не было решением.
Итак, я добавил эти строки в свою конфигурацию wireguard -(, расположенную по адресу /etc/wireguard/wg0.conf
по вашим адресам):
[Interface]
//...
PreUp = iptables -A POSTROUTING -s 10.7.0.0/24 -o eth0 -j SNAT --to-source 11.11.11.11 -t nat
PreDown = iptables -D POSTROUTING -s 10.7.0.0/24 -o eth0 -j SNAT --to-source 11.11.11.11 -t nat
Необходимо включить wg intf как wg0 self -переадресацию
iptables -I FORWARD -i wg0 -o wg0 -j ACCEPT