rfcomm_pppd.8 (153331) | rfcomm_pppd.8 (164240) |
---|---|
1.\" Copyright (c) 2001-2003 Maksim Yevmenkin <m_evmenkin@yahoo.com> 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. --- 9 unchanged lines hidden (view full) --- 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $Id: rfcomm_pppd.8,v 1.7 2003/09/07 18:32:11 max Exp $ | 1.\" Copyright (c) 2001-2003 Maksim Yevmenkin <m_evmenkin@yahoo.com> 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. --- 9 unchanged lines hidden (view full) --- 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $Id: rfcomm_pppd.8,v 1.7 2003/09/07 18:32:11 max Exp $ |
26.\" $FreeBSD: head/usr.sbin/bluetooth/rfcomm_pppd/rfcomm_pppd.8 153331 2005-12-12 04:19:36Z emax $ | 26.\" $FreeBSD: head/usr.sbin/bluetooth/rfcomm_pppd/rfcomm_pppd.8 164240 2006-11-13 01:13:28Z markus $ |
27.\" 28.Dd February 4, 2003 29.Dt RFCOMM_PPPD 8 30.Os 31.Sh NAME 32.Nm rfcomm_pppd 33.Nd RFCOMM PPP daemon 34.Sh SYNOPSIS --- 8 unchanged lines hidden (view full) --- 43.Fl s 44.Op Fl dhS 45.Op Fl a Ar address 46.Fl C Ar channel 47.Fl l Ar label 48.Sh DESCRIPTION 49The 50.Nm | 27.\" 28.Dd February 4, 2003 29.Dt RFCOMM_PPPD 8 30.Os 31.Sh NAME 32.Nm rfcomm_pppd 33.Nd RFCOMM PPP daemon 34.Sh SYNOPSIS --- 8 unchanged lines hidden (view full) --- 43.Fl s 44.Op Fl dhS 45.Op Fl a Ar address 46.Fl C Ar channel 47.Fl l Ar label 48.Sh DESCRIPTION 49The 50.Nm |
51daemon is a simple wrapper daemon that allows to use standard | 51daemon is a simple wrapper daemon that allows the use of |
52.Xr ppp 8 | 52.Xr ppp 8 |
53on RFCOMM connection. | 53via an RFCOMM connection. |
54It can operate in two modes: client and server. 55.Pp | 54It can operate in two modes: client and server. 55.Pp |
56In the client mode, | 56In client mode, |
57.Nm 58opens an RFCOMM connection to the specified server's 59.Ar BD_ADRR 60and 61.Ar channel . | 57.Nm 58opens an RFCOMM connection to the specified server's 59.Ar BD_ADRR 60and 61.Ar channel . |
62Once RFCOMM connection is established, | 62Once the RFCOMM connection is established, |
63.Nm 64executes 65.Xr ppp 8 66in 67.Fl direct 68mode with the specified 69.Ar label . | 63.Nm 64executes 65.Xr ppp 8 66in 67.Fl direct 68mode with the specified 69.Ar label . |
70The | 70Likewise, |
71.Xr ppp 8 | 71.Xr ppp 8 |
72in its turn operates over the RFCOMM connection just like it would operate 73over the standard serial port thus allowing user to | 72operates over the RFCOMM connection just like it would over a standard serial 73port, thus allowing a user to |
74.Dq "dial out" 75and connect to the Internet. 76.Pp | 74.Dq "dial out" 75and connect to the Internet. 76.Pp |
77In the server mode, | 77In server mode, |
78.Nm 79opens an RFCOMM socket and listens for incoming connections from remote clients. 80Once the new incoming connection is accepted, 81.Nm 82forks and executes 83.Xr ppp 8 84in 85.Fl direct 86mode with the specified 87.Ar label . | 78.Nm 79opens an RFCOMM socket and listens for incoming connections from remote clients. 80Once the new incoming connection is accepted, 81.Nm 82forks and executes 83.Xr ppp 8 84in 85.Fl direct 86mode with the specified 87.Ar label . |
88The | 88Likewise, |
89.Xr ppp 8 | 89.Xr ppp 8 |
90in its turn operates over the RFCOMM connection just like it would operate over 91the standard serial port thus providing network connectivity to remote clients. | 90operates over the RFCOMM connection just like it would over a standard serial 91port, thus providing network connectivity to remote clients. |
92.Pp 93The options are as follows: 94.Bl -tag -width indent 95.It Fl a Ar address | 92.Pp 93The options are as follows: 94.Bl -tag -width indent 95.It Fl a Ar address |
96In the client mode, this required option specifies the address of the remote | 96In client mode, this required option specifies the address of the remote |
97RFCOMM server. | 97RFCOMM server. |
98In the server mode, this option can be used to specify the local | 98In server mode, this option can be used to specify the local |
99address to listen on. | 99address to listen on. |
100By default, server will listen on | 100By default, in server mode, the daemon will listen on |
101.Dv ANY 102address. 103The address can be specified as BD_ADDR or name. | 101.Dv ANY 102address. 103The address can be specified as BD_ADDR or name. |
104If name was specified then the | 104If a name was specified, the |
105.Nm 106utility will attempt to resolve the name via 107.Xr bt_gethostbyname 3 . 108.It Fl C Ar channel | 105.Nm 106utility will attempt to resolve the name via 107.Xr bt_gethostbyname 3 . 108.It Fl C Ar channel |
109In both client and server modes, this required option specifies RFCOMM channel 110to connect to or listen on. 111In the server mode, RFCOMM channel should be a number between 1 and 30. 112In the client mode, RFCOMM channel could either be a number between 1 and 30 | 109In both client and server mode, this required option specifies the RFCOMM 110channel to connect to or listen on. 111In server mode, the channel should be a number between 1 and 30. 112In client mode, the channel could either be a number between 1 and 30 |
113or a service name. 114Supported service names are: 115.Cm DUN | 113or a service name. 114Supported service names are: 115.Cm DUN |
116(for DialUp Networking service) and | 116(Dial-Up Networking) and |
117.Cm LAN | 117.Cm LAN |
118(for LAN Access Using PPP service). 119If service name was specified instead of numeric RFCOMM channel then | 118(LAN Access Using PPP). 119If a service name is used instead of a numeric channel number, then |
120.Nm | 120.Nm |
121utility will try to obtain RFCOMM channel for the service via Service 122Discovery Protocol. | 121will try to obtain an RFCOMM channel number via SDP 122(Service Discovery Protocol). |
123.It Fl c 124Act as an RFCOMM client. 125This is the default mode. 126.It Fl d 127Do not detach from the controlling terminal, i.e., run in foreground. 128.It Fl h 129Display usage message and exit. 130.It Fl l Ar label | 123.It Fl c 124Act as an RFCOMM client. 125This is the default mode. 126.It Fl d 127Do not detach from the controlling terminal, i.e., run in foreground. 128.It Fl h 129Display usage message and exit. 130.It Fl l Ar label |
131In both client and server modes, this required option specifies which | 131In both client and server mode, this required option specifies which |
132.Xr ppp 8 133label will be used. 134.It Fl S | 132.Xr ppp 8 133label will be used. 134.It Fl S |
135In the server mode, register the Serial Port (SP) service in addition to the 136LAN Access Using PPP (LAN) service. | 135In server mode, register the 136.Cm SP 137(Serial Port) service in addition to the 138.Cm LAN 139(LAN Access Using PPP) service. 140.Pp |
137It appears that some cell phones are using the so-called 138.Dq "callback mechanism" . 139In this scenario, the user is trying to connect his cell phone to the Internet, | 141It appears that some cell phones are using the so-called 142.Dq "callback mechanism" . 143In this scenario, the user is trying to connect his cell phone to the Internet, |
140and user's host computer is acting as the gateway server. | 144while the user's host computer is acting as the gateway server. |
141It seems that it is not possible to tell the phone to just connect and start | 145It seems that it is not possible to tell the phone to just connect and start |
142using the LAN service. | 146using the 147.Cm LAN 148service. |
143Instead, the user's host computer must 144.Dq "jump start" | 149Instead, the user's host computer must 150.Dq "jump start" |
145the phone by connecting to the phone's SP service. | 151the phone by connecting to the phone's 152.Cm SP 153service. |
146What happens next is the phone kills the existing connection and opens another 147connection back to the user's host computer. | 154What happens next is the phone kills the existing connection and opens another 155connection back to the user's host computer. |
148The phone really wants to use LAN service, but for whatever reason it looks 149for the SP service on the user's host computer. 150This brain damaged behavior was reported for Nokia 6600 and Sony/Ericsson P900. | 156The phone really wants to use the 157.Cm LAN 158service, but for whatever reason it looks for the 159.Cm SP 160service on the user's host computer. 161This brain-damaged behavior was reported for the Nokia 6600 and the 162Sony/Ericsson P900. |
151.It Fl s 152Act as an RFCOMM server. 153.It Fl u Ar N | 163.It Fl s 164Act as an RFCOMM server. 165.It Fl u Ar N |
154This option maps directly onto | 166This option maps directly to the |
155.Fl unit 156.Xr ppp 8 | 167.Fl unit 168.Xr ppp 8 |
157command line option and tells | 169command-line option and tells |
158.Nm 159to instruct 160.Xr ppp 8 161to only attempt to open 162.Pa /dev/tun Ns Ar N . | 170.Nm 171to instruct 172.Xr ppp 8 173to only attempt to open 174.Pa /dev/tun Ns Ar N . |
163This option only works in the client mode. | 175This option only works in client mode. |
164.El 165.Sh PPP CONFIGURATION 166.Ss Important Notes on PPP Configuration 167Special attention is required when adding new RFCOMM configurations to the 168existing PPP configuration. 169Please keep in mind that PPP will 170.Em always 171execute commands in the --- 10 unchanged lines hidden (view full) --- 182other label. 183If you need to use PPP for both dialing out and accepting incoming 184RFCOMM connections, please make sure you have moved all commands related to 185dialing out from the 186.Dq Li default 187section into an appropriate outgoing label. 188.Ss RFCOMM Server 189One of the typical examples is the LAN access. | 176.El 177.Sh PPP CONFIGURATION 178.Ss Important Notes on PPP Configuration 179Special attention is required when adding new RFCOMM configurations to the 180existing PPP configuration. 181Please keep in mind that PPP will 182.Em always 183execute commands in the --- 10 unchanged lines hidden (view full) --- 194other label. 195If you need to use PPP for both dialing out and accepting incoming 196RFCOMM connections, please make sure you have moved all commands related to 197dialing out from the 198.Dq Li default 199section into an appropriate outgoing label. 200.Ss RFCOMM Server 201One of the typical examples is the LAN access. |
190In this example, RFCOMM connection 191is used as a null-modem connection between client and server. 192Both client 193and server will start talking PPP right after RFCOMM connection was established. | 202In this example, an RFCOMM connection 203is used as a null-modem connection between a client and a server. 204Both client and server will start talking PPP right after the RFCOMM 205connection has been established. |
194.Bd -literal -offset indent 195rfcomm-server: 196 set timeout 0 197 set lqrperiod 10 198 set ifaddr 10.0.0.1 10.0.0.2 255.255.255.0 199 enable lqr 200 accept lqr 201 # Do not use PPP authentication. Assume that 202 # Bluetooth connection was authenticated already 203 disable pap 204 deny pap 205 disable chap 206 deny chap 207.Ed 208.Ss RFCOMM Client 209The 210.Nm | 206.Bd -literal -offset indent 207rfcomm-server: 208 set timeout 0 209 set lqrperiod 10 210 set ifaddr 10.0.0.1 10.0.0.2 255.255.255.0 211 enable lqr 212 accept lqr 213 # Do not use PPP authentication. Assume that 214 # Bluetooth connection was authenticated already 215 disable pap 216 deny pap 217 disable chap 218 deny chap 219.Ed 220.Ss RFCOMM Client 221The 222.Nm |
211utility 212supports both LAN and DUN (Dial-Up Networking) access. 213The client's configuration for the LAN access is very similar to server's and 214might look like this. | 223utility supports both 224.Cm LAN 225(LAN Access Using PPP) and 226.Cm DUN 227(Dial-Up Networking) access. 228The client's configuration for 229.Cm LAN 230access is very similar to the server's and might look like this: |
215.Bd -literal -offset indent 216rfcomm-client: 217 enable lqr 218 accept lqr 219 set dial 220 set timeout 0 221 disable iface-alias 222 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0 223 # Do not use PPP authentication. Assume that 224 # Bluetooth connection was authenticated already 225 deny pap 226 disable pap 227 deny chap 228 disable chap 229.Ed 230.Pp | 231.Bd -literal -offset indent 232rfcomm-client: 233 enable lqr 234 accept lqr 235 set dial 236 set timeout 0 237 disable iface-alias 238 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0 239 # Do not use PPP authentication. Assume that 240 # Bluetooth connection was authenticated already 241 deny pap 242 disable pap 243 deny chap 244 disable chap 245.Ed 246.Pp |
231The client's configuration for the DUN access is different. | 247The client's configuration for 248.Cm DUN 249access is different. |
232In this scenario, the client gets connected to the virtual serial port on the 233server. | 250In this scenario, the client gets connected to the virtual serial port on the 251server. |
234To open a PPP session, client must dial a number. | 252To open a PPP session, the client must dial a number. |
235Note that by default 236.Xr ppp 8 237will not execute any configured chat scripts. 238The 239.Ic force-scripts 240option can be used to override this behavior. | 253Note that by default 254.Xr ppp 8 255will not execute any configured chat scripts. 256The 257.Ic force-scripts 258option can be used to override this behavior. |
241The example of such configuration is shown below. | 259An example configuration is shown below: |
242.Bd -literal -offset indent 243rfcomm-dialup: 244 # This is IMPORTANT option 245 enable force-scripts 246 247 # You might want to change these 248 set authname 249 set authkey --- 6 unchanged lines hidden (view full) --- 256 set timeout 30 257 enable dns 258 resolv rewrite 259 260 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0 261 add default HISADDR 262.Ed 263.Pp | 260.Bd -literal -offset indent 261rfcomm-dialup: 262 # This is IMPORTANT option 263 enable force-scripts 264 265 # You might want to change these 266 set authname 267 set authkey --- 6 unchanged lines hidden (view full) --- 274 set timeout 30 275 enable dns 276 resolv rewrite 277 278 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0 279 add default HISADDR 280.Ed 281.Pp |
264Note that by adjusting the initialization string, one can make CSD (Circuit | 282Note that by adjusting the initialization string, one can make a CSD (Circuit |
265Switched Data), HSCSD (High Speed Circuit Switched Data) or GPRS (General 266Packet Radio Service) connection. 267The availability of the particular connection 268type depends on the phone model and service plan activated on the phone. 269.Sh EXIT STATUS 270.Ex -std 271.Sh EXAMPLES 272.Dl "rfcomm_pppd -s -a 00:01:02:03:04:05 -C 1 -l rfcomm-server" --- 6 unchanged lines hidden (view full) --- 279and channel 280.Li 1 . 281Once the incoming connection has been accepted, 282.Nm 283will execute 284.Xr ppp 8 285in 286.Fl direct | 283Switched Data), HSCSD (High Speed Circuit Switched Data) or GPRS (General 284Packet Radio Service) connection. 285The availability of the particular connection 286type depends on the phone model and service plan activated on the phone. 287.Sh EXIT STATUS 288.Ex -std 289.Sh EXAMPLES 290.Dl "rfcomm_pppd -s -a 00:01:02:03:04:05 -C 1 -l rfcomm-server" --- 6 unchanged lines hidden (view full) --- 297and channel 298.Li 1 . 299Once the incoming connection has been accepted, 300.Nm 301will execute 302.Xr ppp 8 303in 304.Fl direct |
287mode with | 305mode with the |
288.Dq Li rfcomm-server 289label. 290.Pp 291.Dl "rfcomm_pppd -c -a 00:01:02:03:04:05 -C 1 -l rfcomm-client" 292.Pp 293This command will start 294.Nm 295in the client mode. 296.Nm 297will try to connect to the RFCOMM server at 298.Li 00:01:02:03:04:05 299address and channel 300.Li 1 . | 306.Dq Li rfcomm-server 307label. 308.Pp 309.Dl "rfcomm_pppd -c -a 00:01:02:03:04:05 -C 1 -l rfcomm-client" 310.Pp 311This command will start 312.Nm 313in the client mode. 314.Nm 315will try to connect to the RFCOMM server at 316.Li 00:01:02:03:04:05 317address and channel 318.Li 1 . |
301Once connected, the | 319Once connected, |
302.Nm 303will execute 304.Xr ppp 8 305in 306.Fl direct | 320.Nm 321will execute 322.Xr ppp 8 323in 324.Fl direct |
307mode with | 325mode with the |
308.Dq Li rfcomm-client 309label. | 326.Dq Li rfcomm-client 327label. |
310.Sh CAVEAT | 328.Sh CAVEATS |
311The 312.Nm | 329The 330.Nm |
313utility in server mode will try to register Bluetooth LAN Access Over PPP 314service with local SPD daemon. 315If local SDP daemon is not running the | 331utility in server mode will try to register the Bluetooth LAN Access Over PPP 332service with the local SPD daemon. 333If the local SDP daemon is not running, |
316.Nm | 334.Nm |
317utility will exit with error. | 335will exit with an error. |
318.Sh SEE ALSO 319.Xr rfcomm_sppd 1 , 320.Xr bluetooth 3 , 321.Xr ng_btsocket 4 , 322.Xr ppp 8 , 323.Xr sdpcontrol 8 , 324.Xr sdpd 8 325.Sh AUTHORS 326.An Maksim Yevmenkin Aq m_evmenkin@yahoo.com | 336.Sh SEE ALSO 337.Xr rfcomm_sppd 1 , 338.Xr bluetooth 3 , 339.Xr ng_btsocket 4 , 340.Xr ppp 8 , 341.Xr sdpcontrol 8 , 342.Xr sdpd 8 343.Sh AUTHORS 344.An Maksim Yevmenkin Aq m_evmenkin@yahoo.com |