Hello all!
I first tried getting help on this issue on the forum, but I didn't
manage to work it out.
My goal is to use the Internet to play games that require LAN broadcasts
(e.g. Startcraft 1). I've managed to setup OpenVPN in routed mode (going
the CA way) but I still haven't nailed the bridged mode.
I want to show you the whole process that I follow with the hope that
someone will spot what I'm doing wrong.
Since I'm including configs, the logs, a script, and command output,
this post is quite verbose. I'll divide into parts:
A. The setup
B. The config files
C. The procedure
D. The log files
A. The setup
------------
The server in my home is a Slackware Linux 14.1 box. The client in my
home is a WinXP SP3 box. My friends run WinXP, Win7, and Win8, but lets
first focus on making this work inside my home.
The client has a static IP 10.0.0.2. The server has a static IP
10.0.0.3. The gateway has a static IP 10.0.0.1. The gateway is a
Technicolor TG582n modem/router given by my ISP.
The gateway is instructed to run DHCP for any computer in my LAN that
doesn't have a static IP. The DHCP range is 10.0.0.30 to 10.0.0.60.
I'm running OpenVPN 2.3.2 with OpenSSL 1.0.1g on the Linux box. This
version of OpenSSL takes care of the Heartbleed bug. I'm running OpenVPN
2.3.4 on the WinXP PC.
The OpenVPN server is instructed to give IPs in the range of 10.0.0.31
to 10.0.0.60.
B. The config files
-------------------
The bridge start script:
#!/bin/bash
br="br0"
tap="tap0"
eth="eth0"
eth_ip="10.0.0.3"
eth_netmask="255.255.255.0"
eth_broadcast="10.0.0.255"
gateway="10.0.0.1"
for t in $tap; do
openvpn --mktun --dev $t
done
brctl addbr $br
brctl addif $br $eth
for t in $tap; do
brctl addif $br $t
done
for t in $tap; do
ifconfig $t 0.0.0.0 promisc up
done
ifconfig $eth 0.0.0.0 promisc up
ifconfig $br $eth_ip netmask $eth_netmask broadcast $eth_broadcast
route add default gw $gateway
The server config:
local 10.0.0.3
cd /etc/openvpn
proto udp
port 40096
verb 3
log-append /var/log/openvpn.log
daemon
dev tap0
server-bridge 10.0.0.3 255.255.255.0 10.0.0.61 10.0.0.90
client-to-client
cipher AES-256-CBC
ca certs/ca.crt
dh dh.pem
cert certs/server.crt
key keys/server.key
user nobody
group nobody
The client config:
client
dev tap
proto udp
remote 10.0.0.3 40096
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
cipher AES-256-CBC
verb 3
remote-cert-tls server
C. The procecedure
------------------
1. On the server machine, I run the bridge creation script and I get no
error message. Doing 'ifconfig -a' I get this:
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.3 netmask 255.255.255.0 broadcast 10.0.0.255
inet6 fe80::280:48ff:fe32:3ba prefixlen 64 scopeid 0x20<link>
ether 00:80:48:32:03:ba txqueuelen 0 (Ethernet)
RX packets 10785 bytes 1094444 (1.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 15221 bytes 8491934 (8.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth0: flags=4419<UP,BROADCAST,RUNNING,PROMISC,MULTICAST> mtu 1500
inet6 fe80::280:48ff:fe32:3ba prefixlen 64 scopeid 0x20<link>
ether 00:80:48:32:03:ba txqueuelen 1000 (Ethernet)
RX packets 20031464 bytes 11185127460 (10.4 GiB)
RX errors 0 dropped 2 overruns 0 frame 0
TX packets 21275133 bytes 8457239430 (7.8 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 21739 bytes 2238472 (2.1 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 21739 bytes 2238472 (2.1 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
tap0: flags=4419<UP,BROADCAST,RUNNING,PROMISC,MULTICAST> mtu 1500
inet6 fe80::1c43:89ff:fe1e:fc4c prefixlen 64 scopeid 0x20<link>
ether 1e:43:89:1e:fc:4c txqueuelen 100 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 18 bytes 1429 (1.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
2. On WinXP, I bridge the OpenVPN TAP adapter with the Ethernet adapter.
I end up with a bridge that has IP 10.0.0.30. That's the first address
in the DHCP range, by the way.
3. I run the OpenVPN client. I immediately get a notification that a
cable is unplugged, but after a few seconds it seems that I'm connected
again. Doing 'ipconfig' on cmd.exe shows:
Ethernet adapter Network Bridge (Network Bridge) 4:
Connection specific DNS Suffix ...: lan
IP Addres ........................: 10.0.0.30
Subnet Mask ......................: 255.255.255.0
Default Gateway ..................: 10.0.0.1
However... I can't reach any destination! I can't ping any website, and
what's more, I can't even ping my gateway!
D. The log files
----------------
(I'm not indenting the logs as I think this makes them less readable.)
Client log:
Tue May 27 01:23:29 2014 OpenVPN 2.3.4 i686-w64-mingw32 [SSL (OpenSSL)]
[LZO] [PKCS11] [IPv6] built on May 2 2014
Tue May 27 01:23:29 2014 library versions: OpenSSL 1.0.1g 7 Apr 2014,
LZO 2.05
Tue May 27 01:23:29 2014 Socket Buffers: R=[8192->8192] S=[8192->8192]
Tue May 27 01:23:29 2014 UDPv4 link local: [undef]
Tue May 27 01:23:29 2014 UDPv4 link remote: [AF_INET]10.0.0.3:40096
Tue May 27 01:23:29 2014 TLS: Initial packet from
[AF_INET]10.0.0.3:40096, sid=9da5a03a 5d9b52bb
Tue May 27 01:23:29 2014 VERIFY OK: depth=1, CN=Easy-RSA CA
Tue May 27 01:23:29 2014 Validating certificate key usage
Tue May 27 01:23:29 2014 ++ Certificate has key usage 00a0, expects 00a0
Tue May 27 01:23:29 2014 VERIFY KU OK
Tue May 27 01:23:29 2014 Validating certificate extended key usage
Tue May 27 01:23:29 2014 ++ Certificate has EKU (str) TLS Web Server
Authentication, expects TLS Web Server Authentication
Tue May 27 01:23:29 2014 VERIFY EKU OK
Tue May 27 01:23:29 2014 VERIFY OK: depth=0, CN=server
Tue May 27 01:23:29 2014 Data Channel Encrypt: Cipher 'AES-256-CBC'
initialized with 256 bit key
Tue May 27 01:23:29 2014 Data Channel Encrypt: Using 160 bit message
hash 'SHA1' for HMAC authentication
Tue May 27 01:23:29 2014 Data Channel Decrypt: Cipher 'AES-256-CBC'
initialized with 256 bit key
Tue May 27 01:23:29 2014 Data Channel Decrypt: Using 160 bit message
hash 'SHA1' for HMAC authentication
Tue May 27 01:23:29 2014 Control Channel: TLSv1, cipher TLSv1/SSLv3
DHE-RSA-AES256-SHA, 2048 bit RSA
Tue May 27 01:23:29 2014 [server] Peer Connection Initiated with
[AF_INET]10.0.0.3:40096
Tue May 27 01:23:31 2014 SENT CONTROL [server]: 'PUSH_REQUEST' (status=1)
Tue May 27 01:23:31 2014 PUSH: Received control message:
'PUSH_REPLY,route-gateway 10.0.0.3,ifconfig 10.0.0.61 255.255.255.0'
Tue May 27 01:23:31 2014 OPTIONS IMPORT: --ifconfig/up options modified
Tue May 27 01:23:31 2014 OPTIONS IMPORT: route-related options modified
Tue May 27 01:23:31 2014 WARNING: --remote address [10.0.0.3] conflicts
with --ifconfig subnet [10.0.0.61, 255.255.255.0] -- local and remote
addresses cannot be inside of the --ifconfig subnet. (silence this
warning with --ifconfig-nowarn)
Tue May 27 01:23:31 2014 do_ifconfig, tt->ipv6=0,
tt->did_ifconfig_ipv6_setup=0
Tue May 27 01:23:31 2014 open_tun, tt->ipv6=0
Tue May 27 01:23:31 2014 TAP-WIN32 device [Local Area Connection 3]
opened: \\.\Global\{0EFE1862-6230-4648-A1CE-C9A674C212D1}.tap
Tue May 27 01:23:31 2014 NOTE: could not get adapter index for
{0EFE1862-6230-4648-A1CE-C9A674C212D1}
Tue May 27 01:23:31 2014 TAP-Windows Driver Version 9.9
Tue May 27 01:23:31 2014 Notified TAP-Windows driver to set a DHCP
IP/netmask of 10.0.0.61/255.255.255.0 on interface
{0EFE1862-6230-4648-A1CE-C9A674C212D1} [DHCP-serv: 10.0.0.0, lease-time:
31536000]
Tue May 27 01:23:36 2014 TEST ROUTES: 0/0 succeeded len=0 ret=1 a=0 u/d=up
Tue May 27 01:23:36 2014 Initialization Sequence Completed
Tue May 27 01:23:43 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:45 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:45 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:47 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:48 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:49 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:50 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:50 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:51 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:52 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:53 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:53 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:54 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:54 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:54 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:55 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:55 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:57 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:57 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:57 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Tue May 27 01:23:57 2014 write UDPv4: No Route to Host (WSAEHOSTUNREACH)
(code=10065)
Server log:
Tue May 27 01:19:04 2014 OpenVPN 2.3.2 i486-slackware-linux-gnu [SSL
(OpenSSL)] [LZO] [EPOLL] [eurephia] [MH] [IPv6] built on Oct 12 2013
Tue May 27 01:19:04 2014 WARNING: you are using user/group/chroot/setcon
without persist-tun -- this may cause restarts to fail
Tue May 27 01:19:04 2014 WARNING: you are using user/group/chroot/setcon
without persist-key -- this may cause restarts to fail
Tue May 27 01:19:04 2014 NOTE: when bridging your LAN adapter with the
TAP adapter, note that the new bridge adapter will often take on its own
IP address that is different from what the LAN adapter was previously set to
Tue May 27 01:19:04 2014 WARNING: --keepalive option is missing from
server config
Tue May 27 01:19:04 2014 Diffie-Hellman initialized with 2048 bit key
Tue May 27 01:19:04 2014 Socket Buffers: R=[180224->131072]
S=[180224->131072]
Tue May 27 01:19:04 2014 TUN/TAP device tap0 opened
Tue May 27 01:19:04 2014 TUN/TAP TX queue length set to 100
Tue May 27 01:19:04 2014 GID set to nobody
Tue May 27 01:19:04 2014 UID set to nobody
Tue May 27 01:19:04 2014 UDPv4 link local (bound): [AF_INET]10.0.0.3:40096
Tue May 27 01:19:04 2014 UDPv4 link remote: [undef]
Tue May 27 01:19:04 2014 MULTI: multi_init called, r=256 v=256
Tue May 27 01:19:04 2014 IFCONFIG POOL: base=10.0.0.61 size=30, ipv6=0
Tue May 27 01:19:04 2014 Initialization Sequence Completed
Tue May 27 01:24:34 2014 10.0.0.30:2497 TLS: Initial packet from
[AF_INET]10.0.0.30:2497, sid=d16b903d bc4f728c
Tue May 27 01:24:35 2014 10.0.0.30:2497 VERIFY OK: depth=1, CN=Easy-RSA CA
Tue May 27 01:24:35 2014 10.0.0.30:2497 VERIFY OK: depth=0, CN=JohnDesktop
Tue May 27 01:24:35 2014 10.0.0.30:2497 Data Channel Encrypt: Cipher
'AES-256-CBC' initialized with 256 bit key
Tue May 27 01:24:35 2014 10.0.0.30:2497 Data Channel Encrypt: Using 160
bit message hash 'SHA1' for HMAC authentication
Tue May 27 01:24:35 2014 10.0.0.30:2497 Data Channel Decrypt: Cipher
'AES-256-CBC' initialized with 256 bit key
Tue May 27 01:24:35 2014 10.0.0.30:2497 Data Channel Decrypt: Using 160
bit message hash 'SHA1' for HMAC authentication
Tue May 27 01:24:35 2014 10.0.0.30:2497 Control Channel: TLSv1, cipher
TLSv1/SSLv3 DHE-RSA-AES256-SHA, 2048 bit RSA
Tue May 27 01:24:35 2014 10.0.0.30:2497 [JohnDesktop] Peer Connection
Initiated with [AF_INET]10.0.0.30:2497
Tue May 27 01:24:35 2014 JohnDesktop/10.0.0.30:2497 MULTI_sva: pool
returned IPv4=10.0.0.61, IPv6=(Not enabled)
Tue May 27 01:24:36 2014 JohnDesktop/10.0.0.30:2497 PUSH: Received
control message: 'PUSH_REQUEST'
Tue May 27 01:24:36 2014 JohnDesktop/10.0.0.30:2497 send_push_reply():
safe_cap=940
Tue May 27 01:24:36 2014 JohnDesktop/10.0.0.30:2497 SENT CONTROL
[JohnDesktop]: 'PUSH_REPLY,route-gateway 10.0.0.3,ifconfig 10.0.0.61
255.255.255.0' (status=1)
Tue May 27 01:24:37 2014 JohnDesktop/10.0.0.30:2497 MULTI: Learn:
00:ff:0e:fe:18:62 -> JohnDesktop/10.0.0.30:2497
Tue May 27 01:25:03 2014 JohnDesktop/10.0.0.30:2497 MULTI: Learn:
02:ff:0e:fe:18:62 -> JohnDesktop/10.0.0.30:2497
------------------------------------------------------------------------------
The best possible search technologies are now affordable for all companies.
Download your FREE open source Enterprise Search Engine today!
Our experts will assist you in its installation for $59/mo, no commitment.
Test it for FREE on our Cloud platform anytime!
http://pubads.g.doubleclick.net/gampad/clk?id=145328191&iu=/4140/ostg.clktrk
_______________________________________________
Openvpn-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openvpn-users