1

For faster prototyping of my code, I would like to provide my laptop address as an endpoint to the http webhook API (Base URL) of the website cloud.thethings.network.

For this, I setup a ddns on noip.com and connected my tp-link router with my noip-account. So right now, I have sth. like myneedddns.ddns.com that forwards to my router.

I’ve also set port forwarding in my router to access my laptop and reserved a static IP for the laptop: enter image description here

However, I can not provide a format like xxx.ddns.com:801 on thethingsstack. From there I can probably handle how to receive the request with flask or django.

How would you approach my goal?

davidism
  • 121,510
  • 29
  • 395
  • 339
Marco Bob
  • 59
  • 6
  • can you try ngrock? https://ngrok.com/ – shourav Aug 17 '21 at 15:20
  • did you use `0.0.0.0` instead of `localhost` in `flask`? And maybe try other port - like `9000` - because some lower ports can be blocked by system (for security reason). OR if you can set port `801` on server then use `80` – furas Aug 17 '21 at 15:51

1 Answers1

1

There are about a thousand ways of doing that.

  1. Use a service like ngrok.com to tunnel directly which in your case is likely the best way.

  2. Use port forwarding on your router (what you are trying to do). This would be done by setting up ddns on your laptop then forwarding whatever port you want to use to whatever port is running the service on your laptop. Note that this requires setting the host on your server to '0.0.0.0' and is insecure so cant be used past development.

  3. Create a VPN using a cloud service then forwarding the port. I don't recommend this but you could create a VPN that would forward the port though this requires that you know a lot about sysadmin, linux, and setting up VPN's

Here is an article that does a decent job if you want something to follow along to: Meduim article

My advice is to just use ngrok

Joshua
  • 56
  • 1
  • 4