infraview

Rating: 
5
Your rating: None Average: 5 (4 votes)

InfraView displays info about your current network environment.

Currently offering:

  • External IP info
  • Local IP info
  • Devices in network (nmap)
  • ARP cache table info
  • Local network port connections (netstat)

Uses python-nmap, nmap

It has nmap-suid as a requirement, which runs as root. The netstat part is also taking root privileges to collect more detailed info.

If you are not comfortable with this, please to NOT install this app!
 

Sources on github

Screenshots: 

Keywords:

Application versions: 
AttachmentSizeDate
harbour-infraview-0.1-5.i486.rpm724.06 KB31/07/2017 - 21:49
harbour-infraview-0.1-5.armv7hl.rpm721.7 KB31/07/2017 - 21:49
harbour-infraview-0.1-6.armv7hl.rpm722.87 KB02/08/2017 - 20:06
harbour-infraview-0.1-6.i486.rpm723.85 KB02/08/2017 - 20:06
harbour-infraview-0.1-7.armv7hl.rpm723.46 KB03/08/2017 - 21:13
harbour-infraview-0.1-7.i486.rpm725.08 KB03/08/2017 - 21:13
harbour-infraview-0.1-8.i486.rpm723.99 KB04/08/2017 - 20:59
harbour-infraview-0.1-8.armv7hl.rpm722.77 KB04/08/2017 - 20:59
harbour-infraview-0.1-9.armv7hl.rpm722.93 KB05/08/2017 - 23:03
harbour-infraview-0.1-9.i486.rpm724.61 KB05/08/2017 - 23:03
harbour-infraview-0.1-10.armv7hl.rpm723.94 KB06/08/2017 - 16:36
harbour-infraview-0.1-10.i486.rpm725.16 KB06/08/2017 - 16:36
Changelog: 

0.0.1-10 Added dutch, updated swedish

0.0.1-9 Added refesh option for main screen

0.0.1-8

  • Added missing network name
  • Info on coverpage

0.0.1-7

  • updated swedish language
  • better landscape layout

0.0.1-6

  • Added Swedish (thanks Eson57)
  • for wlan added: dns/dhcp/domain name/broadcast address

0.0.1-5 Added missing idna library

0.0.1-4 Added missing certifi library

0.0.1-3 Added missing chardet library

0.0.1-2

  • Added missing urllib3 to package
  • Added subnet mask

0.0.1-1 Added local IP info
0.0.1-0 Initial release
 

Comments

rob_k's picture

I cannot install this on my J1, Iijoki. It might be the installation of nmap-suid that is causing the error.

I'm trying to include a screenprint from the error. Doesn't seem to work though. How about this: https://www.dropbox.com/s/u02yo4vaieb9sy0/Screenshot.png?dl=0

ade's picture

"pkcon refresh" first?

rob_k's picture

In the end I downloaded both rpms and it worked. It looks like a wrong dependency, a hard-coded link to a local map in nmap-suid? Anyway, it works now, thanks!

ade's picture

No, there is no wrong dependency. Your installation tried to pull nmap-suid 7.50-1, which is removed because of an issue. That you tried to pull this version indicates you had old repo cache that was not aware of more recent versions.  A refresh should have fixed that.

The lastest infraview does have a dependency on nmap-suid >= 7.50-3 because of added functionality.

explit's picture

For me working too, thanks!

kaulian's picture

Yes for me too
Everythings ok
Nice =)

PamNor's picture

After update nmap-suid I can confirm. Device info --> is working.
No more errors detected.
Great ap. Thanks.

Jordi's picture

Yes, confirmed for Jolla1.

PamNor's picture

Testing 0.1-5.
Happy to tell you 'ade'
IP location info --> is working

ade's picture

Great. I just uploaded a new nmap-suid, which should fix your other issue. You should be able to see al device details now.

PamNor's picture

Testing 0.1-4
...device/ show more info
Ooops .nmap-os-bd file?

[root@Sailfish /]# find . -name nmap-os-db 2>/dev/null
./opt/alien/usr/share/nmap-suid/share/nmap-os-db
./usr/share/nmap-suid/share/nmap-os-db

traceback (most recent call last):

File "/usr/share/harbour-infraview/qml/pages/call
_nmap.py", line 42, in devinfo
nm.scan(ip, arguments="-O")

File "/usr/share/harbour-infraview/python/nmap.py
", line 266, in scan
nmap_warn_keep_trace=nmap_warn_keep_trace

File "/usr/share/harbour-infraview/python/nmap.py
", line 325, in analyse_nmap_xml_scan
raise PortScannerError(nmap_err)

nmap.PortScannerError: 'OS scan requested but I can
not find nmap-os-db file. It should be in /usr/loc
al/share/nmap, ~/.nmap/ or .\nQUITTING!\n'

[D] onError:44 - Python ERROR: file:///usr/share/ha
rbour-infraview/qml/pages/DeviceInfo.qml:31: TypeEr
ror: Cannot read property '0' of undefined

ade's picture

it's using a different directory in my case. Another thing to solve, thanks for testing.

kaulian's picture

Thanks
Now for me missing 'idna' module =)

ade's picture

okay, hopefully the last :-(

PamNor's picture

Testing 0.1-4
Sorry to tell: External ip info -->
Missing module idna?

[nemo@Sailfish ~]$ harbour-infraview
[D] unknown:0 - Using Wayland-EGL
/usr/share/harbour-infraview/python/requests/__init
__.py:80: RequestsDependencyWarning: urllib3 (dev)
or chardet (3.0.4) doesn't match a supported versio
n!
RequestsDependencyWarning)
[D] unknown:0 - "PyOtherSide error: Traceback (most
recent call last):\n\n File \"/usr/share/harbour-
infraview/qml/pages/call_location.py\", line 5, in
\n from requests import get # not avail
able by default!\n\n File \"/usr/share/harbour-inf
raview/python/requests/__init__.py\", line 98, in <
module>\n from . import packages\n\n File \"/us
r/share/harbour-infraview/python/requests/packages.
py\", line 7, in \n locals()[package] =
__import__(package)\n\nImportError: No module named
'idna'\n"
[D] unknown:0 - "PyOtherSide error: Traceback (most
recent call last):\n\n File \"\", line 1,
in \n\nNameError: name 'call_location' is
not defined\n"
[D] onError:50 - Python ERROR: Cannot import module
: call_location (Traceback (most recent call last):

File "/usr/share/harbour-infraview/qml/pages/call
_location.py", line 5, in
from requests import get # not available by de
fault!

File "/usr/share/harbour-infraview/python/request
s/__init__.py", line 98, in
from . import packages

File "/usr/share/harbour-infraview/python/request
s/packages.py", line 7, in
locals()[package] = __import__(package)

ImportError: No module named 'idna'

PamNor's picture

Yep. nmap-suid is installed

ade's picture

It's not searching nmap in the right location in your case. I explicitly set a search path, so not clue what causes this atm.

PamNor's picture

Testing 0.1.3
certifi missing?

File "/usr/share/harbour-infraview/python/request
s/__init__.py", line 97, in
from . import utils

File "/usr/share/harbour-infraview/python/request
s/utils.py", line 24, in
from . import certs

File "/usr/share/harbour-infraview/python/request
s/certs.py", line 15, in
from certifi import where

ImportError: No module named 'certifi'

ade's picture

too late, 0.1.4 is already available :-)

PamNor's picture

Testing 0.1-2
Devices in current network/Show more info: -> Retriewing device info (forever)
nmap-os-db file missing?

[nemo@Sailfish ~]$ harbour-infraview
[D] unknown:0 - Using Wayland-EGL
[D] :15 - call_nmap module is now imported
[D] :27 - call_nmap module is now imported
[D] unknown:0 - "PyOtherSide error: Traceback (most
recent call last):\n\n File \"/usr/share/harbour-
infraview/python/nmap.py\", line 322, in analyse_nm
ap_xml_scan\n dom = ET.fromstring(self._nmap_las
t_output)\n\n File \"/usr/lib/python3.4/xml/etree/
ElementTree.py\", line 1326, in XML\n return par
ser.close()\n\n File \"\", line None\n\nxm
l.etree.ElementTree.ParseError: no element found: l
ine 1, column 0\n\n\nDuring handling of the above e
xception, another exception occurred:\n\n\nTracebac
k (most recent call last):\n\n File \"/usr/share/h
arbour-infraview/qml/pages/call_nmap.py\", line 42,
in devinfo\n nm.scan(ip, arguments=\"-O\")\n\n
File \"/usr/share/harbour-infraview/python/nmap.py
\", line 266, in scan\n nmap_warn_keep_trace=nma
p_warn_keep_trace\n\n File \"/usr/share/harbour-in
fraview/python/nmap.py\", line 325, in analyse_nmap
_xml_scan\n raise PortScannerError(nmap_err)\n\n
nmap.PortScannerError: 'OS scan requested but I can
not find nmap-os-db file. It should be in /usr/loc
al/share/nmap, ~/.nmap/ or .\\nQUITTING!\\n'\n"
[D] onError:44 - Python ERROR: Return value of PyOb
ject call is NULL: Traceback (most recent call last
):

File "/usr/share/harbour-infraview/python/nmap.py
", line 322, in analyse_nmap_xml_scan
dom = ET.fromstring(self._nmap_last_output)

File "/usr/lib/python3.4/xml/etree/ElementTree.py
", line 1326, in XML
return parser.close()

File "", line None

xml.etree.ElementTree.ParseError: no element found:
line 1, column 0

During handling of the above exception, another exc
eption occurred:

Traceback (most recent call last):

File "/usr/share/harbour-infraview/qml/pages/call
_nmap.py", line 42, in devinfo
nm.scan(ip, arguments="-O")

File "/usr/share/harbour-infraview/python/nmap.py
", line 266, in scan
nmap_warn_keep_trace=nmap_warn_keep_trace

File "/usr/share/harbour-infraview/python/nmap.py
", line 325, in analyse_nmap_xml_scan
raise PortScannerError(nmap_err)

nmap.PortScannerError: 'OS scan requested but I can
not find nmap-os-db file. It should be in /usr/loc
al/share/nmap, ~/.nmap/ or .\nQUITTING!\n'

[D] onError:44 - Python ERROR: file:///usr/share/ha
rbour-infraview/qml/pages/DeviceInfo.qml:31: TypeEr
ror: Cannot read property '0' of undefined

ade's picture

It should be provided by nmap-suid (which is a dependency). Do you have that package installed?

PamNor's picture

Testing 0.1-2
New error: Missing library chardet?

[nemo@Sailfish ~]$ harbour-infraview
[D] unknown:0 - Using Wayland-EGL
[D] unknown:0 - "PyOtherSide error: Traceback (most
recent call last):\n\n File \"/usr/share/harbour-
infraview/qml/pages/call_location.py\", line 5, in
\n from requests import get # not avail
able by default!\n\n File \"/usr/share/harbour-inf
raview/python/requests/__init__.py\", line 44, in <
module>\n import chardet\n\nImportError: No modu
le named 'chardet'\n"
[D] unknown:0 - "PyOtherSide error: Traceback (most
recent call last):\n\n File \"\", line 1,
in \n\nNameError: name 'call_location' is
not defined\n"
[D] onError:50 - Python ERROR: Cannot import module
: call_location (Traceback (most recent call last):

File "/usr/share/harbour-infraview/qml/pages/call
_location.py", line 5, in
from requests import get # not available by de
fault!

File "/usr/share/harbour-infraview/python/request
s/__init__.py", line 44, in
import chardet

ImportError: No module named 'chardet'
)
[D] :29 - call_location module is now imported
[D] onError:50 - Python ERROR: Function not found:
'call_location.get_geolocation' (Traceback (most re
cent call last):

File "", line 1, in

NameError: name 'call_location' is not defined
)
[D] :33 - undefined
[D] onError:50 - Python ERROR: file:///usr/share/ha
rbour-infraview/qml/pages/LocationInfo.qml:34: Type
Error: Cannot read property '0' of undefined
screen -Dr
failed to register buffer
Minnesegmentsfeil
[nemo@Sailfish ~]$ screen -Dr
There is no screen to be detached.

ade's picture

That's fast :-) Gonna add it in 0.0.1-3

explit's picture

Very good app, thanks! I found one issue on Fairphone FP2 and Sailfish 2.1.0.11: External IP info is hanging and doesn't show. On Wlan and LTE.
How could it be solved?

ade's picture

I would expect it to show "unknown" if something goes wrong.

https://api.ipify.org should give you your external IP.
https://tools.keycdn.com/geo.json?host=<your_external_ip> should give you "whois" info.
Does that work from your phone (you can try in the browser)?

If it does, could you start harbour-infraview from terminal and show me the output from opening the external ip page? It should show a line with internet provider info.
You can replace any output values with dummy values where if you want to show your provider info here.

It also loads an google image from the location of the provider, but can't imagine your issue is related to this.

explit's picture

Here is the output by starting from terminal:

[nemo@Fairphone-FP2 ~]$ harbour-infraview
[D] unknown:0 - Using Wayland-EGL
[W] unknown:0 - Defaulting to webview scaling factor of 1.0
[W] unknown:0 - No default allowed orientations defined. Check your device c
onfiguration!
[D] unknown:0 - "PyOtherSide error: Traceback (most recent call last):\n\n
File \"/usr/share/harbour-infraview/qml/pages/call_location.py\", line 5, in
\n from requests import get # not available by default!\n\n Fi
le \"/usr/share/harbour-infraview/python/requests/__init__.py\", line 43, in
\n import urllib3\n\nImportError: No module named 'urllib3'\n"
[D] unknown:0 - "PyOtherSide error: Traceback (most recent call last):\n\n
File \"\", line 1, in \n\nNameError: name 'call_location' is
not defined\n"
[D] onError:50 - Python ERROR: Cannot import module: call_location (Tracebac
k (most recent call last):

File "/usr/share/harbour-infraview/qml/pages/call_location.py", line 5, in

from requests import get # not available by default!

File "/usr/share/harbour-infraview/python/requests/__init__.py", line 43,
in
import urllib3

ImportError: No module named 'urllib3'
)
[D] :29 - call_location module is now imported
[D] onError:50 - Python ERROR: Function not found: 'call_location.get_geoloc
ation' (Traceback (most recent call last):

File "", line 1, in

NameError: name 'call_location' is not defined
)
[D] :33 - undefined
[D] onError:50 - Python ERROR: file:///usr/share/harbour-infraview/qml/pages
/LocationInfo.qml:34: TypeError: Cannot read property '0' of undefined

ade's picture

Okay, looks like a local issue with python modules. Will investigate further.

explit's picture

Thanks ade!

ade's picture

should be fixed in 0.0.1-2

explit's picture

Thanks ade for the info:
The first link you send me show on my FP2. 2.247.246.200
Secon link answer with an long string:
{"status":"success","description":"Data successfully received.","data":{"geo":{"host":"2.247.246.200","ip":"2.247.246.200","rdns":"x2f7f6c8.dyn.telefonica.de","asn":"AS6805","isp":"Telefonica Germany ","country_name":"Germany","country_code":"DE","region":"","city":"","postal_code":"","continent_code":"EU","latitude":"51.299301147461","longitude":"9.4910001754761","dma_code":"0","area_code":"0","timezone":"Europe\/Berlin","datetime":"2017-07-31 11:11:44"}}}

Pages