I recently changed ISP from ‘Be’ to ‘Goscomb’ (in order to get native IPv6 delivered direct to my broadband). My ADSL modem does not support IPv6, so I decided to use it as a bridge to my FreeBSD router which would handle everything for me.
These instructions should work for any UK ISP – and quite probably other non-UK ISPs too.
First of all, you need to configure your ADSL modem to be in fully bridged mode (this varies so much depending on your modem that I can’t really comment here other than to say… read the manual!) The ATM configuration will be done on your modem, but do not specify any authentication. As I was using Be, my modem was already in bridged unauthenticated configuration (all Be multiple-IP customers will be bridged)
Once you have done this, connect your ADSL modem directly into an interface on the FreeBSD router. Make a note of its interface name (for me, I will use adsl0)
OK, first we need to configure ppp to do the PPPoE authentication. Edit /etc/ppp/ppp.conf in your favourite editor and add a section for your ISP (I will use goscomb) like so:
set speed sync
set mru 1492
set mtu 1492
set ctsrts off
set echoperiod 15
set lqrperiod 15
set log Phase tun
set device PPPoE:adsl0
set server /tmp/pppoe-adsl0 “” 0177
set authname usernamehere
set authkey passwordhere
add! default HISADDR
add! default HISADDR6
There’s a few things you may wish to change… First you need to replace all occurrences of adsl0with your interface name.
If your ISP does not support IPv6, you should change enable ipv6cp to disable ipv6cp and remove add! default HISADDR6
Next we need to config the startup sequences… Edit /etc/rc.conf in your favourite editor and add the following:
# PPPoE configuration
Change the three references to goscomb to be the name of your ppp section. Also changeadsl0 to the name of your PPPoE interface.
If you haven’t already, you need to tell your FreeBSD server to be a router by adding the following into /etc/rc.conf:
Of course, you can just add the first line if you have no IPv6 connectivity.
You should be all set. Everytime you reboot, your router will auto-connect to the PPPoE (and reconnect if the connection drops).
To confirm after you have connected, you can check out /var/log/ppp.log which should show things being connected.