jpluimers / fritzcap

Fork of elpatron68/fritzcap which was previously automatically exported from code.google.com/p/fritzcap
https://wiert.me/category/power-user/internet/fritz/fritzbox-fritz/
26 stars 11 forks source link

In order to fix #5, print a list of available interfaces to potentially capture from #6

Closed jpluimers closed 7 years ago

jpluimers commented 7 years ago

Issue #5 needs a means to specify the interface to capture from.

In order to specify it, it is convenient to have a list of the interfaces on a Fritz!Box.

To get those, basically you want to get the underlying data of which the http://fritz.box/html/capture.html?sid=################ is built from.

On the surface it looks like the base of these can be two kinds of data:

A closer inspection reveals that Fritz!Box 7490 with firmware 06.83 also supports http://fritz.box/capture.lua?sid=################

jpluimers commented 7 years ago

Interface descriptions and keys can be found with the capture.lua URLs above in html fragments like this:

<h3>Wireless LAN</h3><table class="zebra">
<tr>
<th>Guest2 (2.4 + 5 GHz, guest5) - Interface 1</th>
<td class="buttonrow">
<button type="submit" name="start" id="uiStart_144" value="4-144">Start</button>
</td>

For each connection, he value of the button is they key and the content of the th is the value.

jpluimers commented 7 years ago

Example: python fritzcap.py --show_interfaces --box_name 192.168.24.1 --password foo --username bar

2017-06-23 23:07:45,591 - FritzCap 2.1 started.
2017-06-23 23:07:46,513 - Fritz!Box interfaces from http://192.168.24.1/capture.lua?sid=450b8ba3d181e008: key = value
2017-06-23 23:07:46,513 -   2-1                 = 1. Internet Connection
2017-06-23 23:07:46,513 -   3-17                = Interface 0 ('internet')
2017-06-23 23:07:46,513 -   3-18                = Interface 1 ('iptv')
2017-06-23 23:07:46,513 -   3-0                 = Routing interface
2017-06-23 23:07:46,513 -   1-eth3              = eth3
2017-06-23 23:07:46,513 -   1-wifi0             = wifi0
2017-06-23 23:07:46,513 -   1-lan               = lan
2017-06-23 23:07:46,513 -   1-eth2              = eth2
2017-06-23 23:07:46,514 -   1-tunl0             = tunl0
2017-06-23 23:07:46,514 -   1-eth1              = eth1
2017-06-23 23:07:46,514 -   1-ptm_vr9           = ptm_vr9
2017-06-23 23:07:46,514 -   1-wasp              = wasp
2017-06-23 23:07:46,514 -   1-ath1              = ath1
2017-06-23 23:07:46,514 -   1-eth0              = eth0
2017-06-23 23:07:46,514 -   1-guest             = guest
2017-06-23 23:07:46,514 -   1-ath0              = ath0
2017-06-23 23:07:46,514 -   1-guest_st1         = guest_st1
2017-06-23 23:07:46,515 -   1-wlan              = wlan
2017-06-23 23:07:46,515 -   1-wifi1             = wifi1
2017-06-23 23:07:46,515 -   4-138               = AP2 (2.4 + 5 GHz, ath1) - Interface 1
2017-06-23 23:07:46,515 -   4-137               = AP2 (2.4 + 5 GHz, ath1) - Interface 0
2017-06-23 23:07:46,515 -   4-132               = AP (2.4 GHz, ath0) - Interface 1
2017-06-23 23:07:46,515 -   4-131               = AP (2.4 GHz, ath0) - Interface 0
2017-06-23 23:07:46,515 -   4-129               = HW (2.4 GHz, wifi0) - Interface 0
2017-06-23 23:07:46,515 -   4-128               = WLAN Management Traffic - Interface 0
2017-06-23 23:07:46,515 -   5-162               = usb2
2017-06-23 23:07:46,515 -   5-161               = usb1
2017-06-23 23:07:46,698 - FritzCap finished.