OpenWrt Forum Archive

Topic: VPN w/ Broadcast relay

The content of this topic has been archived on 30 Mar 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

I switched to Openwrt from DDWrt because I couldn't get this to work in DD.  Hopefully open will do me better.

I'm setting up a VPN server so my friends and I can play Lan games with each other from across the internet.  Which will not work without broadcast relay.

I noticed pptpd is not installed by default. How can I install it, and is the Kamikaze package compiled with bcrealy switch enabled? I was reading another thread on this forum about it where people were having various degrees of success getting this to work, but that thread is concerning Whiterussian and is 3 years old.  Right now I am running an Ubuntu box on the side, just running pptpd w/ bcrelay running and the router forwarding port 1723 to that machine. I'm just trying to move this functionality to the router instead.

I have a WRT54GL v1.1 if it matters.

I'm really not an expert as far as VPNs go, but if my memory serves me correct PPTP is relatively ressource intensive, you might be better off using openVPN instead.

either way, if you really want to install pptpd the following should work

opkg update
opkg install pptpd

Correct me if I'm wrong, but open requires clients to download and install software in order to connect. This is not acceptable. I need something that nativity works for windows clients.

Thanks for that command. I'm going to hold off on installing it until I'm sure it was compiled correctly with bcrealy enabled.

IIRC pptp uses GRE in addition to TCP.  I;ve had problems with GRE getting blocked/dropped somewhere along the way.

Further, pptp is a real PITA to set up and use.  Unless MS fixed it, their implementation was badly broken to boot.

Like the poster said, use openvpn.  it works and can tunnel through most anything.

I've had no problems at all with pptpd on Ubuntu. It set it up in minuets. Clients set up on MS windows is a snap. I've set it up under DDWRT just as easily, the only issue was that it wasn't compiled with broadcast relay enabled.

Does OpenVPN even forward BC packets? If not, it's useless to me.

OpenVPN can be configured in bridge mode, where it's completely transparent.



define Build/Configure
        $(call Build/Configure/Default, \
                --with-bcrelay \

so seems pptpd IS compiled with bcrelay option. If you need that, so standard pptpd packages should be enough, no need for manually compiling them from trunk.

Sounds good.

So I installed it, and it's dependencies. Problem... there is no actual bcrelay binary.......

I type bcrelay at the prompt and get the "-ash: bcrelay: not found" message

So i tried opkg install udp-broadcast-relay

installed - rebooted...

bcrelay at the prompt still: "-ash: bcrelay: not found"

How do I install the bcrelay binary?

Should I upgrade to backfire?

(Last edited by Grain on 12 Apr 2010, 07:20)

despite the fact pptpd is compiled with --with-bcrelay option, the bcrelay binary seems to be NOT packaged. That's the reason it cannot be found.

seems you'll have to compile yourself pptpd package and get is installed. But you'll need a minor Makefile modification before building .... have a look at … 545#p56545

Yeah, that was the thread I was reading before. I was hoping things had changed over the last 3 years......

Is there some way to compile on the router it self? Trying to cros compile from an X86 machine made me want to pull my hair out and is what drove my to try OpenWRT in the first place. I'm an extreme novice with Linux os and GCC stuff.

Do you think things would be any different in Backfire, or is Kamikaze just the same story?

(Last edited by Grain on 12 Apr 2010, 17:55)

using the openwrt build-environment is really easy and you don't have to care about crosscompiling difficulties at all. the openwrt build-environment takes care of this. it's really easy, on you don't even have to install linux somewhere, you can run a linux-image (I would recommend ubuntu or debian) in a vmware-player.

to get bcrelay in the pptpd-package you just need to add one line to the pptpd Makefile. (see leonardogyn link)
all of this shouldn't take more than an hour.
If you don't like this, use openvpn instead

Is there some kind of noob guide to this build-environment? I was trying to use it before and found it very complicated. All my programing experience is in MS Visual Studio. GCC stuff is very foreign to me.

(Last edited by Grain on 13 Apr 2010, 03:19)

i've opened a ticket to that ..... --with-bcrelay should be removed from Makefile if that's the desired behavior ..... or bcrelay binary should be correctly packed on pptpd package.

a good start for the build environment is the documentation of the build system: … 1-400002.1

but I will try to list only the steps you need:

1. get a linuxsystem running (I would recomment debian or ubuntu)
2. install building tools. for debian (ubuntu) use synaptic: select subversion and build-essential and install it.
3. download openwrt with svn: take a look at
    backfire run this in a terminal:

svn co svn://
cd backfire

4. check prerequisits and install missing ones:

make prereq

use synaptic to install all missing packages. when all prerequisits are installed a configuration menu opens. select your target system depending on your routers architecture and target profile if there is a specific one for your device. then exit and save the changes.

5. add/link additional packages to your build system:

make package/symlinks

6. configure your image:

make menuconfig

and select all packages you want to compile for your system. M for package or * for build in
then exit an save the configuration

7. edit ./feeds/packages/net/pptpd/Makefile and make the needed changes to add bcrelay

gedit ./feeds/packages/net/pptpd/Makefile

8. build openwrt...

make world

after building it, you will find the compiled binaries (images, packages) for your platform in the bin folder.

9. install it

Thanks, this is very helpful, but I'm still a little lost.

I up to this step :6. configure your image:

make menuconfig

and select all packages you want to compile for your system. M for package or * for build in
then exit an save the configuration

And am not sure what to do here. Im in a menu system but I'm not sure what I'm supposed to do.

Also, just looking ahead a bit, the make file in post … 545#p56545  is looks somewhat differently that the make file in included with the one I checked out of SVN just now.

One has lines starting with $(CP) and the other has a lot of $(INSTALL_BIN) lines.

(Last edited by Grain on 14 Apr 2010, 21:15)

Okay, I just jumped through not cretin if I've done it right or not.

Amusing I have, how do I direct opkg to install the one I have instead of the one it downloads. Car I redirect it to a local ipk file. or do I have to host it on my own ftp server or something like that?

opkg install yourfile.ipk

just as simple as that

leonardogyn wrote:

opkg install yourfile.ipk

just as simple as that

Thanks. But.....

root@OpenWrt:~# opkg install poptop.ipk
Installing pptpd (1.3.4-1) to root...
Collected errors:
 * verify_pkg_installable: Only have 0kb available on filesystem /, pkg pptpd needs 94
 * opkg_install_cmd: Cannot install package pptpd.

Why is there no free space?

This is a fresh install of Backfire 10.03 BTW.  I tried installing my compiled pptpd on Kamikaze but is said it wasn't compatible and wouldn't let me install. I suppose that because I compiled from the Backfire source. What can I do now? This file is only 26k. And It let me download it with wget, so it had some space to begin with.

The discussion might have continued from here.