btpand
— Bluetooth
PAN daemon
btpand |
[-i ifname]
[-m mode]
-a addr
-d device
{-s service |
-S service
[-p psm]} |
btpand |
[-c path]
[-i ifname]
[-l limit]
[-m mode]
[-p psm]
-d device
{-s service |
-S service} |
The btpand
daemon handles Bluetooth
Personal Area Networking services in the system. It can operate in client
mode as a Personal Area Networking User (PANU) or in server mode as Network
Access Point (NAP), Group ad-hoc Network (GN) or PANU host.
btpand
connects to the system via a
tap(4)
virtual Ethernet device and forwards Ethernet packets to remote Bluetooth
devices using the Bluetooth Network Encapsulation Protocol (BNEP).
The PANU client is the device that uses either the NAP or GN
service, or can talk directly to a PANU host in a crossover cable
fashion.
A GN host forwards Ethernet packets to each of the connected PAN
users as needed but does not provide access to any additional networks.
The NAP service provides some of the features of an Ethernet
bridge, with the NAP host forwarding Ethernet packets between each of the
connected PAN users, and a different network media.
Note, the only differences between NAP and GN services as
implemented by btpand
are in the SDP service record.
The bridging of packets by the NAP must be configured separately.
The options are as follows:
-a
address
- In client mode, address of remote server. May be given as BDADDR or name,
in which case
btpand
will attempt to resolve the
address via the
bt_gethostbyname(3)
call.
-c
path
- In server mode, specify path to the
sdpd(8)
control socket. The default path is
/var/run/sdp.
-d
device
- Restrict connections to the local device. May be
given as BDADDR or name, in which case
btpand
will
attempt to resolve the address via the
bt_devaddr(3)
call. btpand
will set the
tap(4)
interface physical address to the BDADDR of the Bluetooth radio.
-i
ifname
btpand
uses the
tap(4)
driver to create a new network interface for use. Use this option to
select a specific
tap(4)
device interface which must already be created.
-l
limit
- In server mode, limit the number of simultaneous connections. The default
limit is 7 for NAP and GN servers, and 1 for a PANU server.
-m
mode
- Set L2CAP connection link mode. Supported modes are:
- auth
- require devices to be paired.
- encrypt
- auth, plus enable encryption.
- secure
- encryption, plus change of link key.
NOT YET SUPPORTED. Use global device settings to set
authentication and encryption.
-p
psm
- Use an alternative L2CAP Protocol/Service Multiplexer (PSM) for server
mode or client mode (when not using Service Discovery). The default PSM
for BNEP is 15 (0x000f).
-s
service
- Name of service to provide or connect to, the
following services are recognised:
- GN
- Group ad-hoc Network.
- NAP
- Network Access Point.
- PANU
- Personal Area Networking User.
-S
service
- As per
-s
except that
btpand
will not use SDP services for connection
setup.
When providing networking services, the Bluetooth PAN profile says
that the ‘Class of Device’ property of the bluetooth
controller SHALL include Networking capability (set bit 0x020000). See
hccontrol(8)
for details.
After btpand
has set up the client or
server connection and opened the
tap(4)
interface, it will create a pid file and detach.
- /dev/tap
-
- /etc/bluetooth/hosts
-
- /var/run/sdp
-
- /var/run/tapN.pid
-
The btpand
utility exits 0 on
success, and >0 if an error occurs.
ifconfig tap1 create
btpand -a host -d mydevice -s NAP -i
tap1
dhclient tap1
Will create a connection to the NAP on host,
and link that to the tap1 interface.
btpand -d mydevice -s GN
Will create a Group Network and register the GN service with the
local SDP server.
There is no way to supply alternative values for the SDP
record.
There is no way to set net type or multicast address filters.
btpand
does not do any address routing
except to directly connected unicast addresses. All other packets are
multicast.
As btpand
uses the BDADDR of the Bluetooth
radio as the physical address of the tap, only one instance can be run per
radio.
btpand
can only provide a single
service.