Here's how you can setup a bluetooth pan on Raspbian.
This answer uses systemd/networkd but you could do something similar with an interfaces file and dnsmasq if you wanted.
Run:
sudo apt-get install bluez-tools
Create the following files:
/etc/systemd/network/pan0.netdev
[NetDev]
Name=pan0
Kind=bridge
/etc/systemd/network/pan0.network
[Match]
Name=pan0
[Network]
Address=172.20.1.1/24
DHCPServer=yes
/etc/systemd/system/bt-agent.service
[Unit]
Description=Bluetooth Auth Agent
[Service]
ExecStart=/usr/bin/bt-agent -c NoInputNoOutput
Type=simple
[Install]
WantedBy=multi-user.target
/etc/systemd/system/bt-network.service
[Unit]
Description=Bluetooth NEP PAN
After=pan0.network
[Service]
ExecStart=/usr/bin/bt-network -s nap pan0
Type=simple
[Install]
WantedBy=multi-user.target
Then run
sudo systemctl enable systemd-networkd
sudo systemctl enable bt-agent
sudo systemctl enable bt-network
sudo systemctl start systemd-networkd
sudo systemctl start bt-agent
sudo systemctl start bt-network
Finally to pair, run:
sudo bt-adapter --set Discoverable 1
Then, on the other device pair it and connect the network. Hopefully everything should just work after that.
Also note: currently, if you are running Raspbian Stretch, you will need an updated btuart script to workaround the issue here.