Error: Network device is not present

Hello guys,

Today I finally decided to flash my WRT 1900ACS and install OpenWRT. For the OpenVPN configuration, I followed every step of my VPN provider VPNUnlimited from the following manual:

However, every time at the step for of my tun0 interface I get the error:

Error: Network device is not present

I have tried every possible solution that came to my mind however, no luck. I upload the .ovpn file containing all the required info, follow the instructions, and the same error.

I was wondering if anyone could help me since I really need the VPN running.

Thanks guys!

fwiw, factory reset your router to return to openwrt defautls, and perhaps try my alternative guide?
https://openwrt.ebilan.co.uk/viewtopic.php?f=7&t=279

above links from owrt wiki page:
https://openwrt.org/docs/guide-user/services/vpn/openvpn/client-luci

I use a number of different owrt routers with VPNunlimited without issues.

I looked at their guide and at first glance it looks ok.


Did you create a 'tun0' (tun'Zero') interface?

If you still have problems, post the contents of your /etc/config/network and /etc/config/firewall files

I decided to try Wireguard since I need constant connection but no luck either! Following are the contents. I ping 192.198.10.1 and nothing! I appreciate some help:

config interface 'loopback'
	option ifname 'lo'
	option proto 'static'
	option ipaddr '127.0.0.1'
	option netmask '255.0.0.0'

config globals 'globals'
	option ula_prefix 'fd54:43fd:3e91::/48'

config interface 'lan'
	option type 'bridge'
	option ifname 'eth0.1'
	option proto 'static'
	option ipaddr '192.168.1.1'
	option netmask '255.255.255.0'
	option ip6assign '60'

config interface 'wan'
	option ifname 'eth1.2'
	option proto 'dhcp'
	list dns '10.100.0.1'
	option peerdns '0'

config interface 'wan6'
	option ifname 'eth1.2'
	option proto 'dhcpv6'
	option reqprefix 'auto'
	option reqaddress 'try'

config switch
	option name 'switch0'
	option reset '1'
	option enable_vlan '1'

config switch_vlan
	option device 'switch0'
	option vlan '1'
	option ports '0 1 2 3 5t'

config switch_vlan
	option device 'switch0'
	option vlan '2'
	option ports '4 6t'

config interface 'VPNUnlimited'
	option proto 'wireguard'
	option private_key ****
	option listen_port '51820'
	list addresses '10.100.2.78/32'

config wireguard_VPNUnlimited
	option public_key ****
	option persistent_keepalive '25'
	option endpoint_port '51820'
	list allowed_ips '0.0.0.0/0'
	list allowed_ips '::/0'
	option preshared_key ****
	option endpoint_host '178.162.205.115'


config defaults
	option syn_flood '1'
	option input 'ACCEPT'
	option output 'ACCEPT'
	option forward 'REJECT'

config zone
	option name 'lan'
	option input 'ACCEPT'
	option output 'ACCEPT'
	option forward 'ACCEPT'
	option network 'lan'

config zone
	option name 'wan'
	option input 'REJECT'
	option output 'ACCEPT'
	option forward 'REJECT'
	option masq '1'
	option mtu_fix '1'
	option network 'wan wan6 VPNUnlimited'

config forwarding
	option src 'lan'
	option dest 'wan'

config rule
	option name 'Allow-DHCP-Renew'
	option src 'wan'
	option proto 'udp'
	option dest_port '68'
	option target 'ACCEPT'
	option family 'ipv4'

config rule
	option name 'Allow-Ping'
	option src 'wan'
	option proto 'icmp'
	option icmp_type 'echo-request'
	option family 'ipv4'
	option target 'ACCEPT'

config rule
	option name 'Allow-IGMP'
	option src 'wan'
	option proto 'igmp'
	option family 'ipv4'
	option target 'ACCEPT'

config rule
	option name 'Allow-DHCPv6'
	option src 'wan'
	option proto 'udp'
	option src_ip 'fc00::/6'
	option dest_ip 'fc00::/6'
	option dest_port '546'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-MLD'
	option src 'wan'
	option proto 'icmp'
	option src_ip 'fe80::/10'
	list icmp_type '130/0'
	list icmp_type '131/0'
	list icmp_type '132/0'
	list icmp_type '143/0'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-ICMPv6-Input'
	option src 'wan'
	option proto 'icmp'
	list icmp_type 'echo-request'
	list icmp_type 'echo-reply'
	list icmp_type 'destination-unreachable'
	list icmp_type 'packet-too-big'
	list icmp_type 'time-exceeded'
	list icmp_type 'bad-header'
	list icmp_type 'unknown-header-type'
	list icmp_type 'router-solicitation'
	list icmp_type 'neighbour-solicitation'
	list icmp_type 'router-advertisement'
	list icmp_type 'neighbour-advertisement'
	option limit '1000/sec'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-ICMPv6-Forward'
	option src 'wan'
	option dest '*'
	option proto 'icmp'
	list icmp_type 'echo-request'
	list icmp_type 'echo-reply'
	list icmp_type 'destination-unreachable'
	list icmp_type 'packet-too-big'
	list icmp_type 'time-exceeded'
	list icmp_type 'bad-header'
	list icmp_type 'unknown-header-type'
	option limit '1000/sec'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-IPSec-ESP'
	option src 'wan'
	option dest 'lan'
	option proto 'esp'
	option target 'ACCEPT'

config rule
	option name 'Allow-ISAKMP'
	option src 'wan'
	option dest 'lan'
	option dest_port '500'
	option proto 'udp'
	option target 'ACCEPT'

config include
	option path '/etc/firewall.user'

fyi, there is a problem with VPNunlimited Wireguard instructions. I couldn't get it working yesterday either on two different routers.
https://www.vpnunlimitedapp.com/help/manuals/open-wrt-wireguard-setup

If you find the interface is up but cannot pass data through the tunnel, the clock on the router is out of sync. I reported the omission to them yesterday.

Various fixes are at bottom of wiki page
https://openwrt.org/docs/guide-user/services/vpn/wireguard/client

Try LUCI > System > System > Local Time Click on 'Sync with browser' button to confirm it is same problem I witnessed.

If you still have problems, what is your WRT1900 WAN port wired to? (eg. modem or another router).

What is 192.198.10.1 ?

Thank you again!

Unfortunately I still have the problem of data doesn't pass through the tunnel!
My router is connected to a DSL modem. I synced the clock and still no lock! Is it possible that my ISP does something with it? I am in Iran and basically internet is 90% filtered here and ISPs prevent many common actions such as static IP and port forwarding!

Have you contacted Keepsolid customer services via online chat to ask if they are aware of any issues from customers in Iran?

If they don't respond immediately, they normally respond by email within a few hours. Customer services is in EET time zone (eg. Latvia, Ukraine, may be Russia)

I'm checking your uploaded /etc/config/network & /etc/config/firewall for any obvious errors.

What is the IP address on the WRT1900 WAN port ? (Is it 192.168.1.x ?)

Yes! It’s such a bummer both openvpn and wireguard failed me today!

You cannot have same subnet 192.168.1.x on both WAN and LAN ports of WRT1900.

If WAN is on 192.168.1.x, change the LAN IP address of your WRT1900 to 192.168.111.1 and see if it resolves the problem for openvpn and wireguard.

I also compared your uploaded config to mine and only obvious differences I deleted WAN6 interface and I set LAN IP to 192.168.111.1. See my VPNunlimited wireguard config below. I've removed some sections to make it easier to read.


config interface 'lan'
	option type 'bridge'
	option ifname 'eth0.1'
	option proto 'static'
	option ipaddr '192.168.111.1'       # WG router wired to ISP router on 192.168.1.x
	option netmask '255.255.255.0'
	option ip6assign '60'



config interface 'wan'
	option proto 'static'           #  I use static IP not DHCP
	option gateway '192.168.1.254'
	option ipaddr '192.168.1.239'
	option ifname 'eth0.2'          # specific to my router
	option netmask '255.255.255.0'
	list dns '10.100.0.1'



config interface 'VPNwg'
	option proto 'wireguard'
	option private_key '**********
	option listen_port '51820'
	list addresses '10.100******

config wireguard_VPNwg
	option public_key '*********
	option persistent_keepalive '25'
	list allowed_ips '0.0.0.0/0'
	list allowed_ips '::/0'
	option preshared_key '************
	option endpoint_host '88.150.*****
	option route_allowed_ips '1'          # This MUST BE enabled, otherwise DNS will fail.


config zone
	option name 'lan'
	option input 'ACCEPT'
	option output 'ACCEPT'
	option forward 'ACCEPT'
	option network 'lan'

config zone
	option name 'wan'
	option input 'REJECT'
	option output 'ACCEPT'
	option forward 'REJECT'
	option masq '1'
	option mtu_fix '1'
	option network 'wan VPNwg'

config forwarding
	option dest 'wan'
	option src 'lan'


One disadvantage of wireguard is the lack of useful diagnostics or logs. I've noticed the interface can be brought up even when the WAN cable is disconnected. Whereas with Openvpn, the VPN instance can only be brought up if the server is present.