Chleba / netscanner

Terminal Network scanner & diagnostic tool with modern TUI
MIT License
869 stars 20 forks source link

Cannot run on macOS #15

Open igor9silva opened 8 months ago

igor9silva commented 8 months ago

The only ouput I can get is (running with sudo, installed via Cargo):

`netscanner` failed with Error:
Unable to create datalink channel: No such file or directory (os error 2)

I'm on a MacBook Air M1.

Chleba commented 8 months ago

Hi, This is very interesting. Do you run docker that has some network bridges? Are you connected via wifi or ethernet? When netscanner cannot create datalink it's either not having an active interface that can create that datalink channel or not connected at all to any network.

igor9silva commented 8 months ago

@Chleba I use OrbStack for Docker, but do not have it running. I'm on a WiFi network.

Anything I can do to help debug?

Chleba commented 8 months ago

Hi, netscanner is creating datalink from active interface. That interface has to be badly chosen for that datalink. Maybe if I can ask you for a output from this command ?

ifconfig | pcregrep -M -o '^[^\t:]+(?=:([^\n]|\n\t)*status: active)'

igor9silva commented 8 months ago

This was my output:

en0
awdl0
en9
en7
image

Without the iPhone attached it gives me

en0
awdl0

But netscanner will fail with the very same output.

Chleba commented 7 months ago

Hi, quick question. Do you have IPv6 only network? Could you pass me please whole output from ifconfig? That may help. Thanks

igor9silva commented 7 months ago

Hmm, interesting question.

The actual reason I got interested in netscanner is because I'm dealing with an insistent ERR_NETWORK_CHANGED on Chrome (specifically) for months. Similar to https://support.google.com/chrome/thread/138398422/frequent-err-network-changed-errors?hl=en.

At some point someone suggested that turning off IPv6 would help, so I did it (but it used to be IPv6 only, yes).

Narrator: it did not solve.

My current ifconfig output:

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
    options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP>
    inet 127.0.0.1 netmask 0xff000000
    inet6 ::1 prefixlen 128
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
    nd6 options=201<PERFORMNUD,DAD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
anpi1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=400<CHANNEL_IO>
    ether 56:31:dd:d1:78:ab
    media: none
    status: inactive
anpi0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=400<CHANNEL_IO>
    ether 56:31:dd:d1:78:aa
    media: none
    status: inactive
en3: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=400<CHANNEL_IO>
    ether 56:31:dd:d1:78:8a
    nd6 options=201<PERFORMNUD,DAD>
    media: none
    status: inactive
en4: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=400<CHANNEL_IO>
    ether 56:31:dd:d1:78:8b
    nd6 options=201<PERFORMNUD,DAD>
    media: none
    status: inactive
en1: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
    options=460<TSO4,TSO6,CHANNEL_IO>
    ether 36:c4:9c:20:db:80
    media: autoselect <full-duplex>
    status: inactive
en2: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
    options=460<TSO4,TSO6,CHANNEL_IO>
    ether 36:c4:9c:20:db:84
    media: autoselect <full-duplex>
    status: inactive
bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=63<RXCSUM,TXCSUM,TSO4,TSO6>
    ether 36:c4:9c:20:db:80
    Configuration:
        id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
        maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
        root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
        ipfilter disabled flags 0x0
    member: en1 flags=3<LEARNING,DISCOVER>
            ifmaxaddr 0 port 8 priority 0 path cost 0
    member: en2 flags=3<LEARNING,DISCOVER>
            ifmaxaddr 0 port 9 priority 0 path cost 0
    nd6 options=201<PERFORMNUD,DAD>
    media: <unknown type>
    status: inactive
ap1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
    ether 72:ed:3c:12:a7:2b
    inet6 fe80::70ed:3cff:fe12:a72b%ap1 prefixlen 64 scopeid 0xb
    nd6 options=201<PERFORMNUD,DAD>
    media: autoselect (<unknown type>)
    status: inactive
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
    ether 50:ed:3c:12:a7:2b
    inet6 fe80::1467:62ce:9d73:df17%en0 prefixlen 64 secured scopeid 0xc
    inet 192.168.1.121 netmask 0xffffff00 broadcast 192.168.1.255
    nd6 options=201<PERFORMNUD,DAD>
    media: autoselect
    status: active
awdl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=6460<TSO4,TSO6,CHANNEL_IO,PARTIAL_CSUM,ZEROINVERT_CSUM>
    ether da:88:07:eb:01:9d
    inet6 fe80::d888:7ff:feeb:19d%awdl0 prefixlen 64 scopeid 0xd
    nd6 options=201<PERFORMNUD,DAD>
    media: autoselect
    status: active
llw0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=400<CHANNEL_IO>
    ether da:88:07:eb:01:9d
    inet6 fe80::d888:7ff:feeb:19d%llw0 prefixlen 64 scopeid 0xe
    nd6 options=201<PERFORMNUD,DAD>
    media: autoselect
    status: inactive
utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
    inet6 fe80::1784:eda:b17c:b245%utun0 prefixlen 64 scopeid 0xf
    nd6 options=201<PERFORMNUD,DAD>
utun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
    inet6 fe80::5ef6:29a3:bfd3:f751%utun1 prefixlen 64 scopeid 0x10
    nd6 options=201<PERFORMNUD,DAD>
utun2: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 2000
    inet6 fe80::9911:c04f:6e39:342f%utun2 prefixlen 64 scopeid 0x11
    nd6 options=201<PERFORMNUD,DAD>
utun3: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1000
    inet6 fe80::ce81:b1c:bd2c:69e%utun3 prefixlen 64 scopeid 0x12
    nd6 options=201<PERFORMNUD,DAD>
utun5: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
    inet6 fe80::7dc1:3886:7857:3808%utun5 prefixlen 64 scopeid 0x14
    nd6 options=201<PERFORMNUD,DAD>
utun6: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
    inet6 fe80::a5b:38be:59ea:dbfb%utun6 prefixlen 64 scopeid 0x15
    nd6 options=201<PERFORMNUD,DAD>
utun7: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
    inet6 fe80::187e:b8fe:69b6:b510%utun7 prefixlen 64 scopeid 0x16
    nd6 options=201<PERFORMNUD,DAD>
utun8: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
    inet6 fe80::d2ec:bd6d:bbcc:d9ee%utun8 prefixlen 64 scopeid 0x17
    nd6 options=201<PERFORMNUD,DAD>
utun9: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1380
    inet6 fe80::10c7:3bdf:248a:7cdf%utun9 prefixlen 64 scopeid 0x1c
    nd6 options=201<PERFORMNUD,DAD>
utun10: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 2000
    inet6 fe80::573e:e9ed:f6db:5071%utun10 prefixlen 64 scopeid 0x1d
    nd6 options=201<PERFORMNUD,DAD>
utun11: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1000
    inet6 fe80::ce81:b1c:bd2c:69e%utun11 prefixlen 64 scopeid 0x1e
    nd6 options=201<PERFORMNUD,DAD>
utun12: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
    inet6 fe80::40dc:1f0:bdad:a8f9%utun12 prefixlen 64 scopeid 0x1f
    nd6 options=201<PERFORMNUD,DAD>

Public IP:

image