root/branches/alex_v2_branch/FAQ

Revision 901, 20.5 kB (checked in by mina, 3 years ago)

Insignificant cleanup of CVS artifacts after svn migration:
1. Remove unneeded .cvsignore files since ths svn:ignore property is set to the same list
2. Replaced $Header$ macros with $Id$
3. Modify a couple of documentation files referring to CVS to SVN

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1 #
2 # $Id$
3 #
4 # The latest version of this document lives at:
5 # http://www.ilesansfil.org/wiki/WiFiDog/FAQ
6 #
7 # Please check the above URL if you have a FAQ that does not appear here.
8 #
9
10 WiFiDog/FAQ
11
12 The WiFi Dog Captive Portal Frequently Asked Questions
13
14    To alleviate the repetition on the [9][WWW] WiFiDog mailing list, and
15    to help people get started quickly, here are the FAQs:
16     1. [10]The WiFi Dog Captive Portal Frequently Asked Questions
17          1. [11]General questions
18               1. [12]What is WiFiDog ?
19               2. [13]Who makes WiFiDog ?
20               3. [14]Who can use WiFiDog ?
21               4. [15]Who currently uses WiFiDog ?
22               5. [16]What can it do ?
23               6. [17]What is it composed of ?
24               7. [18]What are the main differences between it and NoCat ?
25               8. [19]How does it work ?
26               9. [20]What does it run on ?
27              10. [21]Can I write my own client ?
28              11. [22]Can I write my own auth server ?
29              12. [23]What does it look like ?
30          2. [24]The WiFiDog Client
31               1. [25]What do I need ?
32               2. [26]Pre-installation
33               3. [27]Installation
34               4. [28]Configuration
35               5. [29]Running
36               6. [30]Testing
37          3. [31]The WiFiDog client on a linksys WRT54G
38               1. [32]What do I need ?
39               2. [33]Pre-installation
40               3. [34]Installation
41                    1. [35]Introduction
42                    2. [36]Compiling a MIPS-friendly WiFiDog
43                    3. [37]Getting the new MIPS-friendly WiFiDog onto the
44                       router
45                    4. [38]Actual installation
46               4. [39]Configuration, Running and Testing
47               5. [40]The intricate link between WiFiDog and OpenWRT
48               6. [41]I am not comfortable with linux and don't know how
49                  to do all this compiling stuff. Is there an easier way
50                  for me to get the WiFiDog client running on a Linksys
51                  WRT54G ?
52          4. [42]The WiFiDog auth server
53               1. [43]What do I need ?
54               2. [44]Installation
55               3. [45]Configuration
56               4. [46]Testing
57
58 General questions
59
60 What is WiFiDog ?
61
62    [47]WiFiDog is software used to create wireless hotspots. It is a
63    next-generation alternative to [48][WWW] NoCat.
64
65 Who makes WiFiDog ?
66
67    The technical team of [49]IleSansFil created and maintains
68    [50]WiFiDog.
69
70 Who can use WiFiDog ?
71
72    On the legal/licensing front, anyone can use [51]WiFiDog. It is free
73    software released under the GPL license.
74
75    On the practical front, we would like the answer to also be
76    "everyone", however this would not be the truth. The main target user
77    base of [52]WiFiDog is network administrators, hotspot administrators
78    and hackers who "know what they're doing". Odds are that an average
79    windows user would not benefit from, or be able to correctly setup and
80    continually administer a [53]WiFiDog installation.
81
82    If the software ever reaches a point of complete point-and-click ease
83    that we feel average users can safely administer, we will update this
84    document.
85
86 Who currently uses WiFiDog ?
87
88    The following companies, organizations, groups or persons are known to
89    use [54]WiFiDog on their hotspots:
90      * [55]IleSansFil
91      * [56][WWW] BC Wireless
92
93 What can it do ?
94
95    See the [57]WiFiDog/FeatureList page for the feature list.
96
97 What is it composed of ?
98
99    It is composed of 2 components:
100     1. The client is a daemon process - this gets installed on every
101        wireless router
102     2. The auth server is a web application - this gets installed in a
103        central location
104
105 What are the main differences between it and NoCat ?
106
107    On the client side, it's smaller, has far fewer dependencies, and runs
108    well on embedded devices.
109
110    On the auth server side, it's more customizable, and is geared towards
111    capitalizing the infrastructure for the purposes of building portals
112    and communities.
113
114 How does it work ?
115
116    The client daemon uses firewall rules to control traffic going through
117    the router. When a new user tries to access a web site, the client
118    will transparently re-direct them to the auth server where they can
119    either log-in or sign-up. The client and the auth server then
120    negotiate what to do with the client and either allow or deny them
121    certain network access.
122
123    The client also talks to the auth server every X minutes to update it
124    on vital statistics including uptime, load, traffic count per client,
125    and to let it know it's still there.
126
127    Refer to the [58]WiFiDog/FlowDiagram document for some more details.
128
129 What does it run on ?
130
131    The client runs on any linux machine that has a working
132    netfilter+iptables installation.
133
134    The auth server runs on any PHP-enabled web server.
135
136 Can I write my own client ?
137
138    Sure, but why ? We've done all the work. The client is written in C
139    and is extremely lightweight so that it runs comfortably in embedded
140    environments such as the [59][WWW] Linksys WRT54G router.
141
142    The client is time-tested and is fairly stable. It is used extensively
143    in [60][WWW] IleSansFil's deployed hotspots.
144
145 Can I write my own auth server ?
146
147    Again, we've done all the work. However our auth server at the time of
148    this writing is not as polished as the client. Feel free to make it
149    better or write your own from scratch. If you go with the later option
150    you'll have to respect the same protocol the client uses for the whole
151    system to work correctly.
152
153 What does it look like ?
154
155    The client is a daemon process that runs in the background. It looks
156    like zen, chi, the ether, zilch. It has no user interface.
157
158    The auth server is a web application that can be customized via
159    templates to look however you want it to look. To check out
160    [61]IleSansFil's auth server installation see [62][WWW]
161    https://auth.ilesansfil.org
162
163 The WiFiDog Client
164
165 What do I need ?
166
167     1. Basic proficiency in a linux environment
168     2. A linux OS with netfilter compiled into the kernel
169     3. The iptables package
170     4. The GNU C compiler (gcc). Other compilers may work, but we have
171        not tested and will not support them.
172     5. The latest [63]WiFiDog tarball which can be obtained from
173        [64][WWW] SourceForge
174
175 Pre-installation
176
177    This is where a lot of people run into problems, so let's state this
178    in bold:
179
180    MAKE SURE EVERYTHING WORKS FIRST BEFORE INTRODUCING [65]WiFiDog INTO
181    THE ENVIRONMENT
182
183    That especially means:
184      * The router must boot properly
185      * The router must bring up the interfaces properly
186      * The router must set up the routes properly
187      * The router must connect to the internet properly
188      * DNS settings must be set or obtained properly. DNS must work.
189      * DHCP settings (client, server or both) must be set or obtained
190        properly.
191      * If using NAT, the router must setup NAT/masquerading rules with
192        iptables properly
193      * Clients on the desired ([66]WiFi) network must be able to bind,
194        associate, lease and connect the internet properly
195      * All the above must happen automatically when the router starts or
196        gets rebooted
197
198    Do NOT proceed with installing [67]WiFiDog until you've satisfied the
199    above. It will not work otherwise and you will waste lots of time.
200
201 Installation
202
203    [68]WiFiDog, like many open source projects, is distributed with
204    standard autotools utilities to make installation easy. Unpack the
205    tarball, then follow the standard:
206 ./configure
207 make
208 make install
209
210 Configuration
211
212    Edit /etc/wifidog.conf and follow the instructions in the file. Things
213    should be self-explanatory.
214
215 Running
216
217    For the first time, run [69]WiFiDog with the following switches:
218 wifidog -f -d 7
219
220    -f means to run in foreground (do not become a background daemon)
221
222    -d 7 increases debug output level to the maximum
223
224 Testing
225
226    As a client on the [70]WiFi network (or whatever interface is
227    configured as the LAN interface in /etc/wifidog.conf), open a web
228    browser and try to browse to your favourite web site.
229
230    Monitor the output of the running [71]WiFiDog to see what it's doing.
231
232 The WiFiDog client on a linksys WRT54G
233
234    Due to the lightness of the [72]WiFiDog client it is often installed
235    inside the linksys WRT54G. There are some profound issues that arise
236    with this setup that it warrants its own section in this FAQ:
237
238 What do I need ?
239
240    You will need to have basic/full proficiency in a linux environment
241
242    You need to re-flash your router with a hacker-friendly firmware
243    called [73][WWW] OpenWRT. [74][WWW] Follow the user guide on the
244    OpenWRT site to get this part done.
245
246    Do not proceed until you've completed the above. We also recommend you
247    spend some time familiarizing yourself with your new router's OS
248    before introducing [75]WiFiDog into that environment. This especially
249    includes the nvram settings, network interfaces and existing interface
250    bridges.
251
252 Pre-installation
253
254    The same rules apply as the pre-installation in a non-WRT54G
255    environment above. Do not proceed until you've satisfied them. In
256    summary: Make sure EVERYTHING works first.
257
258 Installation
259
260 Introduction
261
262    Installation of the client on the WRT54G is a bit tricky. The space
263    limitations on the device mean there is no compiler in the OpenWRT
264    operating system. That means that you must compile the client on an
265    external machine then transfer the compiled form onto the router.
266
267    To complicate things more, if you compile your client regularly on a
268    standard x86 desktop the produced binary will not run on the router
269    due to the different type of processor (MIPS) on that router.
270
271    What is needed is called cross-compilation, In that scenario you use
272    an architecture (such as your x86 desktop) to produce binaries
273    explicitly designed to run on a different architecture (your MIPS
274    router).
275
276    The above was the bad news since it makes things sound complicated.
277    The good news is that it's not too complicated and we've built scripts
278    to make this a snap for you. As a matter of fact, you've already done
279    this before!
280
281    Remember when you followed the OpenWRT building instructions ? Without
282    knowing it, you already cross-compiled stuff! You used your desktop to
283    cross-compile an entire operating system for the MIPS architecture
284    which resulted in one compressed firmware image you installed on your
285    router.
286
287 Compiling a MIPS-friendly WiFiDog
288
289     1. Download the latest [76][WWW] WiFiDog tarball from sourceforge.
290     2. Uncompress the tarball, enter the directory
291     3. Run the following, replacing /usr/local/openwrt/ with wherever you
292        unpacked the OpenWRT tarball earlier:
293
294 ipkg/rules BUILDROOT=/usr/local/openwrt/
295
296    You're done. If all is well you should now have a new file named
297    wifidog_1.1.0_mipsel.ipk (version number may be different depending on
298    the tarball you downloaded).
299
300 Getting the new MIPS-friendly WiFiDog onto the router
301
302    The .ipk is a data file for the simple "ipkg/i-Package" package
303    manager already on your router. All that's needed now is to copy that
304    file onto your router. If you have installed the dropbear SSH daemon
305    package on your router you can use scp on your desktop to copy the
306    .ipk file to the router. Otherwise copy that file to any web server
307    you have access to, then use wget on the router to download the file
308    from the web server.
309
310    Either way, place the file in the /tmp/ directory on the router.
311
312 Actual installation
313
314    Once you have the .ipk file on the router, use this command to install
315    it:
316 ipkg install /tmp/wifidog_1.1.0_mipsel.ipk
317
318    Once that is successful delete the .ipk file from /tmp/ to free the
319    occupied memory.
320
321 Configuration, Running and Testing
322
323    Same as the earlier section in a non-WRT54G environment
324
325 The intricate link between WiFiDog and OpenWRT
326
327    Repeat after me:
328
329    A [77]WiFiDog RUNNING ON AN OpenWRT INSTALLATION MUST HAVE BEEN
330    COMPILED AGAINST THE SAME OpenWRT BUILDROOT USED TO CREATE THAT
331    INSTALLATION
332
333    What does that mean ?
334     1. If you downloaded and compiled OpenWRT yourself, download and
335        compile [78]WiFiDog yourself against the same buildroot - Do not
336        use someone else's pre-compiled [79]WiFiDog
337     2. If you downloaded a pre-compiled OpenWRT firmware image:
338          1. Ask the person who built it to compile [80]WiFiDog for you
339             against the same buildroot
340          2. Or ask them for a copy of their OpenWRT buildroot so you may
341             compile [81]WiFiDog against it
342
343 I am not comfortable with linux and don't know how to do all this compiling
344 stuff. Is there an easier way for me to get the WiFiDog client running on a
345 Linksys WRT54G ?
346
347    You can use an OpenWRT and [82]WiFiDog compiled by someone else. They
348    must be compiled by the same person against the same OpenWRT
349    buildroot.
350
351    [83]IleSansFil makes it's own pair of OpenWRT images and [84]WiFiDog
352    .ipk compiled files available to the public:
353      * You can download a pre-compiled OpenWRT firmware image [85][WWW]
354        here
355      * And you can download a compatible [86]WiFiDog .ipk file [87][WWW]
356        here
357
358    Look in the [88][WWW] OpenWRT site for instructions on how to re-flash
359    your router with the firmware image (skip any download/building
360    instructions).
361
362    Then follow the above installation instructions for installing the
363    [89]WiFiDog .ipk file into the OpenWRT-flashed router.
364
365    Please note that the above saves you from the knowledge and time
366    needed to compile and produced these binary files. It is however no
367    magical cure for linux illiteracy. You need to be proficient enough in
368    a unix environment to be able to telnet/ssh into the router and
369    perform the outlined installation and configuration tasks. If you do
370    not feel comfortable doing this we advise you consult with someone who
371    is proficient in linux and networking.
372
373 The WiFiDog auth server
374
375 What do I need ?
376
377    Refer to [90]WiFiDog/AuthServerDoc
378
379 Installation
380
381    Refer to [91]WiFiDog/AuthServerDoc
382
383 Configuration
384
385    Refer to [92]WiFiDog/AuthServerDoc
386
387 Testing
388
389    Refer to [93]WiFiDog/AuthServerDoc
390
391    last edited 2005-03-27 13:11:15 by [94]MinaNaguib
392
393 References
394
395    1. http://www.ilesansfil.org/wiki/FrontPage
396    2. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=raw
397    3. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print
398    4. http://www.ilesansfil.org/wiki/WiFiDog
399    5. http://www.ilesansfil.org/wiki/FindPage
400    6. http://www.ilesansfil.org/wiki/TitleIndex
401    7. http://www.ilesansfil.org/wiki/WordIndex
402    8. http://www.ilesansfil.org/wiki/HelpOnFormatting
403    9. http://listes.ilesansfil.org/
404   10. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-b9d27a8844e66371abfbb27bf54669896d8bf4fa
405   11. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-eb7dd5c81583187efb2d29ebc9ab2b6457417b13
406   12. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-e05420efb19364f3fa0844223f1bcfc71be7db00
407   13. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-80293173c84355ebeff2ecbfabaa32edb3c3ae75
408   14. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-2aa554753e8b93818ba5ef190e67e401421931b9
409   15. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-975f3574aa59265dd2b0c45ae96e90c98c8bc7d5
410   16. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-dccf73ff2dcc305d6334dfd0ed90d1c4221b8a12
411   17. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-ebd81c14ab1b66d6aada9fc399597b644e120036
412   18. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-9b4c49acb692c6ba8bc2c0e43a991c5fc7b80220
413   19. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-5aa44a01d2ff78d1e2b5240e0a6c75910d584a0e
414   20. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-738ab14de6f62065ca3daf9dd3341bfcabc06223
415   21. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-6059fbd6c262224baf06331fbe83f319ffe730fa
416   22. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-e8131f271e42589291d507afd89d0c5d24f02ad1
417   23. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-6a764a3be722e0ff8d1446586643ea57d70cd489
418   24. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-a650736551182819fd6f742597362be729d9b70d
419   25. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-57aaa0d1e21d38a7f5bedea65950c36b422cbbb6
420   26. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-2b75ffe2445295c9982d0873d48e11d5cd89816e
421   27. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-930f69b528374c4c55fc91b52e030deef8a93648
422   28. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-4b221edbf4c2383afab601694f2db039700c21cc
423   29. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-9fcf91fbcf4712b6de6d5b70e703192dd882afa8
424   30. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-18cc26d84a97b42f3bc06af0203038062a8efb06
425   31. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-8ba37f479842312562f131032bb11e4fb68942aa
426   32. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-57aaa0d1e21d38a7f5bedea65950c36b422cbbb6-2
427   33. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-2b75ffe2445295c9982d0873d48e11d5cd89816e-2
428   34. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-930f69b528374c4c55fc91b52e030deef8a93648-2
429   35. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-b6830b2e74230b45153f4fa98ee189d5748ec9f0
430   36. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-78504516e51f8fc43cc111b9a8a41a85cb652fff
431   37. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-92221794cfda95baa91352d087656f27754027d2
432   38. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-2474f5bb689b7b06fc3334eb8e29a26ed60c4280
433   39. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-37c9cfe0aa830fa8ef3e6f617bd3c741cca6947c
434   40. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-1dee9a0f840701e6518a0763c48aef734d1996f8
435   41. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-158e6f354a348c9374107d0a66a7f4c84603ba8a
436   42. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-30106563831cfdb0840b05fa48e9194d7876f12e
437   43. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-57aaa0d1e21d38a7f5bedea65950c36b422cbbb6-3
438   44. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-930f69b528374c4c55fc91b52e030deef8a93648-3
439   45. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-4b221edbf4c2383afab601694f2db039700c21cc-2
440   46. http://www.ilesansfil.org/wiki/WiFiDog/FAQ?action=print#head-18cc26d84a97b42f3bc06af0203038062a8efb06-2
441   47. http://www.ilesansfil.org/wiki/WiFiDog
442   48. http://nocat.net/
443   49. http://www.ilesansfil.org/wiki/IleSansFil
444   50. http://www.ilesansfil.org/wiki/WiFiDog
445   51. http://www.ilesansfil.org/wiki/WiFiDog
446   52. http://www.ilesansfil.org/wiki/WiFiDog
447   53. http://www.ilesansfil.org/wiki/WiFiDog
448   54. http://www.ilesansfil.org/wiki/WiFiDog
449   55. http://www.ilesansfil.org/wiki/IleSansFil
450   56. http://www.bcwireless.net/
451   57. http://www.ilesansfil.org/wiki/WiFiDog/FeatureList
452   58. http://www.ilesansfil.org/wiki/WiFiDog/FlowDiagram
453   59. http://www.linksys.com/products/product.asp?prid=508&scid=35
454   60. http://auth.ilesansfil.org/hotspot_status.php
455   61. http://www.ilesansfil.org/wiki/IleSansFil
456   62. https://auth.ilesansfil.org/
457   63. http://www.ilesansfil.org/wiki/WiFiDog
458   64. http://sourceforge.net/projects/wifidog
459   65. http://www.ilesansfil.org/wiki/WiFiDog
460   66. http://www.ilesansfil.org/wiki/WiFi
461   67. http://www.ilesansfil.org/wiki/WiFiDog
462   68. http://www.ilesansfil.org/wiki/WiFiDog
463   69. http://www.ilesansfil.org/wiki/WiFiDog
464   70. http://www.ilesansfil.org/wiki/WiFi
465   71. http://www.ilesansfil.org/wiki/WiFiDog
466   72. http://www.ilesansfil.org/wiki/WiFiDog
467   73. http://openwrt.org/
468   74. http://openwrt.org/OpenWrtDocs
469   75. http://www.ilesansfil.org/wiki/WiFiDog
470   76. http://sourceforge.net/projects/wifidog
471   77. http://www.ilesansfil.org/wiki/WiFiDog
472   78. http://www.ilesansfil.org/wiki/WiFiDog
473   79. http://www.ilesansfil.org/wiki/WiFiDog
474   80. http://www.ilesansfil.org/wiki/WiFiDog
475   81. http://www.ilesansfil.org/wiki/WiFiDog
476   82. http://www.ilesansfil.org/wiki/WiFiDog
477   83. http://www.ilesansfil.org/wiki/IleSansFil
478   84. http://www.ilesansfil.org/wiki/WiFiDog
479   85. http://www.ilesansfil.org/dist/openwrt/
480   86. http://www.ilesansfil.org/wiki/WiFiDog
481   87. http://www.ilesansfil.org/dist/wifidog/
482   88. http://www.openwrt.org/
483   89. http://www.ilesansfil.org/wiki/WiFiDog
484   90. http://www.ilesansfil.org/wiki/WiFiDog/AuthServerDoc
485   91. http://www.ilesansfil.org/wiki/WiFiDog/AuthServerDoc
486   92. http://www.ilesansfil.org/wiki/WiFiDog/AuthServerDoc
487   93. http://www.ilesansfil.org/wiki/WiFiDog/AuthServerDoc
488   94. http://www.ilesansfil.org/wiki/MinaNaguib
Note: See TracBrowser for help on using the browser.