Error linux route add command failed
Я настроил VPN-сервер
local 192.168.0.250
dev tun
proto udp
port 1194
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server-vpn.crt
key /etc/openvpn/easy-rsa/keys/server-vpn.key
dh /etc/openvpn/easy-rsa/keys/dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig 10.8.0.1 10.8.0.2
push “route 10.8.0.1 255.255.255.255”
push “route 10.8.0.0 255.255.255.0”
push “route 192.168.0.250 255.255.255.0”
push “dhcp-option DNS 8.8.8.8”
push “redirect-gateway def1”
client-to-client
duplicate-cn
keepalive 10 120
tls-auth /etc/openvpn/easy-rsa/keys/ta.key 0
cipher AES-128-CBC
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log 20
log /var/log/openvpn.log
verb 1
При подключении к клиенту openvpn с терминала Linux с помощью этой команды:
openvpn –config /home/user/myfile.ovpn
У меня эта ошибка:
OpenVPN 2.3.2 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [eurephia] [MH] [IPv6] built on Dec 1 2014
Control Channel Authentication: tls-auth using INLINE static key file
UDPv4 link local: [undef]
UDPv4 link remote: [AF_INET]xx.xx.xx.xx:1194
[server-vpn] Peer Connection Initiated with [AF_INET]xx.xx.xx.xx:1194
TUN/TAP device tun0 opened
do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
/sbin/ip link set dev tun0 up mtu 1500
/sbin/ip addr add dev tun0 local 10.8.0.14 peer 10.8.0.13
RTNETLINK answers: Invalid argument
ERROR: Linux route add command failed: external program exited with error status: 2
RTNETLINK answers: File exists
ERROR: Linux route add command failed: external program exited with error status: 2
Initialization Sequence Completed
Ответ
Следующие маршруты неверны. Вы не можете добавить первые два (и не нужно добавлять вручную), поскольку они соответствуют диапазону ip vpn для настроенного вами туннеля. (Эти два варианта также избыточны, поскольку 10.8.0.1 является частью сети 10.8.0.0.) Третий – это ваша локальная сеть, и он будет добавлен автоматически. Итак, удалите их все и посмотрите.
push “route 10.8.0.1 255.255.255.255”
push “route 10.8.0.0 255.255.255.0”
push “route 192.168.0.250 255.255.255.0”
Push-маршрут используется для добавления маршрута к другим частным подсетям.
# Push routes to the client to allow it
# to reach other private subnets behind
# the server. Remember that these
# private subnets will also need
# to know to route the OpenVPN client
# address pool (10.8.0.0/255.255.255.0)
# back to the OpenVPN server.
;push “route 192.168.10.0 255.255.255.0”
;push “route 192.168.20.0 255.255.255.0”
OpenVPN client: ERROR: Linux route add command failed
У меня возникла эта ошибка при использовании клиента OpenVPN:
Mon Sep 25 07:46:43 2017 /sbin/ip link set dev tun0 up mtu 1500
Mon Sep 25 07:46:43 2017 /sbin/ip addr add dev tun0 local 10.8.0.10 peer 10.8.0.9
Mon Sep 25 07:46:43 2017 /sbin/ip route add 192.168.1.0/24 via 10.8.0.9
ip: RTNETLINK answers: File exists
Mon Sep 25 07:46:43 2017 ERROR: Linux route add command failed: external program exited with error status: 2
Mon Sep 25 07:46:43 2017 /sbin/ip route add 10.8.0.0/24 via 10.8.0.9
Mon Sep 25 07:46:43 2017 /sbin/ip route add 10.8.0.1/32 via 10.8.0.9
Mon Sep 25 07:46:43 2017 Initialization Sequence Completed
Я не являюсь администратором сервера, поэтому не могу изменить конфигурацию сервера.. Я попробовал ту же конфигурацию на своем Ubuntu, и она работает…
Моя операционная система представляет собой костюмированный дистрибутив Linux, архитектура – ARM (armv5tejl), ядро – 3.10
Есть идеи, как это исправить? Спасибо!
Ответ
Попробуйте один раз:
ip-ссылка sudo удаляет YOUR_NETWORK_INTERFACE
Пример:
sudo ip link delete tun0