I have following setup. Jetson dev board with ip camera (Reolink RLC-410a) connected directly to ethernet port and usb modem (4G). When static ip is set I can get access to camera GUI by typing ip address in browser but in that case internet doesn’t work, but if I have dynamic ip, internet works but camera doesn’t. Is it possible to get everything to work?
This sounds like not an issue limited to jetson nano. I mean if you use the same setup on x64 host, set a static IP which does not go through the gateway would hit the same problem too.
Where is the dhcp server located that can assign the dynamic IP to your host?
Not sure that I understand question. I haven’t set any DHCP server, it was all plug and play up to this point
I have following setup:
Alcatel LinkKey 4G/LTE modem <=> NVidia dev board <= Reolink RLC-410a
Camera have static ip address 192.168.1.60
$ arp -a
? (192.168.1.60) at <incomplete> on usb1
ik40.home (192.168.1.1) at ae:f6:4a:53:a5:2b [ether] on usb1
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether a2:32:77:97:3e:89 brd ff:ff:ff:ff:ff:ff
3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 48:b0:2d:2f:8f:9f brd ff:ff:ff:ff:ff:ff
4: l4tbr0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 4a:de:dc:d8:29:79 brd ff:ff:ff:ff:ff:ff
5: rndis0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast master l4tbr0 state DOWN group default qlen 1000
link/ether 4a:de:dc:d8:29:79 brd ff:ff:ff:ff:ff:ff
6: usb0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast master l4tbr0 state DOWN group default qlen 1000
link/ether 4a:de:dc:d8:29:7b brd ff:ff:ff:ff:ff:ff
7: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 74:d8:3e:44:25:5f brd ff:ff:ff:ff:ff:ff
8: usb1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000
link/ether f6:c1:f2:87:5a:21 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.102/24 brd 192.168.1.255 scope global dynamic noprefixroute usb1
valid_lft 6075sec preferred_lft 6075sec
inet6 fe80::4291:49ab:72d4:75ab/64 scope link noprefixroute
valid_lft forever preferred_lft forever
$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether 48:b0:2d:2f:8f:9f txqueuelen 1000 (Ethernet)
RX packets 159 bytes 7314 (7.3 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 37
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 1291 bytes 97250 (97.2 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1291 bytes 97250 (97.2 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
rndis0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 4a:de:dc:d8:29:79 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
usb0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 4a:de:dc:d8:29:7b txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
usb1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.102 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::4291:49ab:72d4:75ab prefixlen 64 scopeid 0x20<link>
ether f6:c1:f2:87:5a:21 txqueuelen 1000 (Ethernet)
RX packets 3084 bytes 1898711 (1.8 MB)
RX errors 1 dropped 0 overruns 0 frame 1
TX packets 2808 bytes 551055 (551.0 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
I am also not sure which interface is modem and which is IP cam. The only IP from your jetson is usb1: 192.168.1.102, where does this IP come from? Assgined by the modem?
I guess eth0 is camera since is directly connected to ethernet via poe injector, usb1 is modem
Ok, so could you share me when your ethernet is working, what is the ifconfig on your jetson nano? and when ethernet is not working, what is the status on jetson nano?
It sounds like you cannot configure the IP on camera side, right?
Also, what is the interface that you are using to access external ethernet? The usb modem?
ifconfig
when i can access to camera gui by typing ip to url but no internet
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.60 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::4ab0:2dff:fe2f:8f9f prefixlen 64 scopeid 0x20<link>
ether 48:b0:2d:2f:8f:9f txqueuelen 1000 (Ethernet)
RX packets 36 bytes 33584 (33.5 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 133 bytes 10763 (10.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 37
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 668 bytes 53744 (53.7 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 668 bytes 53744 (53.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
rndis0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 4a:de:dc:d8:29:79 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
usb0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 4a:de:dc:d8:29:7b txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
usb1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.153 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::a8e3:d736:293c:88bb prefixlen 64 scopeid 0x20<link>
ether c2:1a:20:ab:1a:32 txqueuelen 1000 (Ethernet)
RX packets 10 bytes 1296 (1.2 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 53 bytes 9602 (9.6 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ifconfig
when no response from camera GUI but with internet connection
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::4ab0:2dff:fe2f:8f9f prefixlen 64 scopeid 0x20<link>
ether 48:b0:2d:2f:8f:9f txqueuelen 1000 (Ethernet)
RX packets 12 bytes 552 (552.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 55 bytes 9199 (9.1 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 37
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 983 bytes 90422 (90.4 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 983 bytes 90422 (90.4 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
rndis0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 4a:de:dc:d8:29:79 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
usb0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 4a:de:dc:d8:29:7b txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
usb1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.102 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::187d:7eff:fe48:7721 prefixlen 64 scopeid 0x20<link>
ether 1a:7d:7e:48:77:21 txqueuelen 1000 (Ethernet)
RX packets 1546 bytes 1219245 (1.2 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1470 bytes 388768 (388.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
I can use windows machine and set static ip on camera via Reolink client.
Also, what is the interface that you are using to access external ethernet? The usb modem?
Yes, usb modem (Alcatel LinkKey 4g/LTE)
edit: noticed if I quickly open chromium and navigate to camera GUI and some random internet page everything works, and then just stops
I don’t quite understand why changing the camera side configuration will also change the IP to interact with the modem.
Could you share the command you use to change IP and dmesg after the IP on usb1 gets changed?
Can you be more precise what to type/you want, I’m not much of an expert in this?
First, tell us how did you set the ip to make these two cases happen.
By following this guide on stackoverflow
In case where internet was working file was looking like
auto usb1
iface usb1 inet static
address 192.168.1.102
netmask 255.255.255.0
gateway 192.168.1.1
in case where i could access to camera
auto eth0
iface eth0 inet static
address 192.168.1.80
netmask 255.255.255.0
gateway 192.168.1.1
But when you can access camera, the IP on eth0 is not what you set (192.168.1.80).
And usb1 is not what you set either.
Could you clarify this part?
Could you remove the gateway from your eth0?
But when you can access camera, the IP on eth0 is not what you set (192.168.1.80).
And usb1 is not what you set either.Could you clarify this part?
So i have to use Reolink client on windows machine to set static IP address on camera as far as I know, it’s not possible to set it up from ubuntu. So this settings
auto eth0
iface eth0 inet static
address 192.168.1.80
netmask 255.255.255.0
gateway 192.168.1.1
and I can access to camera
Could you remove the gateway from your eth0?
nothing happens when gateway is removed
Err… yes, maybe you have a tool there to set the IP on camera.
But you still not give us an explanation why the IP is 192.168.1.60 but not 192.168.1.80. Is it a typo or it is true the IPs are different?
You said you write 192.168.1.80 to your ubuntu setting, but the result you shared us in previous comment told us it is 192.168.1.60. Also, the IP to access usb modem does not match your config file either.
Not typo, if set as same ip as camera wont work if set to something else, works just set static ip on that interface
so in config is 192.168.1.80 but url is 192.168.1.60 which is true to settings from camera client
What do you mean “set as same ip as camera”? I have no idea about the “url” here either. Could your elaborate it?
Reoling have client that works only on Windows, Mac OS, Android in which you can access to camera settings and fiddle with IP address (default is DHCP), only there you can set IP to be static afaik therefore i set it up to 192.168.1.60.
On Jetson in /etc/network/interfaces
have following settings
auto eth0
iface eth0 inet static
address 192.168.1.80
netmask 255.255.255.0
gateway 192.168.1.1
Here if i match ip in settings with ip of camera it doesn’t work, cannot get access to camera, but if i set IP to 192.168.1.80, then i can get access to it.
ok, then where does this ifconfig result come from? The IP here is .1.60 and you told us you can still access the camera.
From what I understand now,
camera → IP 192.168.1.60
Jetson nano interface1 to camera → IP 192.168.1.80
Jetson nano interface2 to usb modem → IP 192.168.1.102
What I cannot understand is why the IP does not follow what you set here. For example, I see usb1 has 192.168.1.153 or eth0 has 192.168.1.60. These do not match your setting.