Telegram trigger ip reserved

I have n8n set up in a ubuntu server running on raspberry pi.
I have docker installed along with Nginx Proxy Manager
I have reverse proxy along with ssl certificates installed and able to run n8n

now here is the problem, i created a new workflow from scratch, and tried to set up telegram on message trigger, it keeps saying that my ip address is reserved.

Here is the docker compose.yaml content:

version: "3.3"
services:
  n8n:
    stdin_open: true
    tty: true
    container_name: n8n
    ports:
      - 5678:5678
    volumes:
      - n8n_data:/home/node/.n8n
    image: docker.n8n.io/n8nio/n8n
    environment:
      - N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
      - N8N_TEMPLATES_ENABLED=false
      - N8N_PROTOCOL=https
      - N8N_HOST=[localdomain in npm reverse proxy]
      - WEBHOOK_URL=https://[localdomain in npm reverse proxy]/
volumes:
  n8n_data: {}
networks: {}

everytime i clicked the test workflow button, this error messages appear:

Bad request - please check your parameters
n8n  | 400 - {"ok":false,"error_code":400,"description":"Bad Request: bad webhook: IP address [local ipv4] is reserved"}

i’ve been googling for hours but no solution is to be found, even here i only find 2 results yet both result didn’t resolve this problem

i am able to send messages back to telegram bot via manual trigger, so the problem lies only with the on message trigger.

please help.
thank you.

I’m not really sure whats going on but I had some issue similar to this and added several enviroments and got it working.

version: '3'
services:
  n8n:
    image: n8nio/n8n
    restart: unless-stopped
    ports:
      - "5678:5678"
    environment:
      - N8N_HOST=domain.com
      - N8N_PROTOCOL=https
      - N8N_PORT=5678
      - WEBHOOK_TUNNEL_URL=https://domain.com
      - WEBHOOK_URL=https://domain.com
      - N8N_EDITOR_BASE_URL=https://domain.com
      - N8N_SKIP_WEBHOOK_DEREGISTRATION_SHUTDOWN=true
    volumes:
      - n8n_data:/home/node/.n8n

volumes:
  n8n_data:

I have a few that you don’t so maybe these will help.

Thank you for the reply Joelh, i tried adding some parameter that i don’t have but i still the same problem.

One thing to note, n8n give me this messages

n8n  | The following environment variable is deprecated and will be removed in an upcoming version of n8n. Please take the recommended actions to update your configuration:
n8n  |  - N8N_SKIP_WEBHOOK_DEREGISTRATION_SHUTDOWN -> n8n no longer deregisters webhooks at startup and shutdown. Remove this environment variable; it is no longer needed.

so i removed that environment parameter but nothing solved my problem, i still need help

Sorry, I’m not sure what to suggest. I’m still learning n8n myself.

At least I would set the n8n to listen to HTTP protocol, as the certificate is located on the nginx and you don’t need setting it on the n8n.

But I’ve never seen such an error…

so i finally solved the reserved ip address error by creating a cloudflare tunnel to the my docker server. i can’t explain everything very well but simply put you need to redirect telegram bot to your ip with that cloudflare tunnel.

now, next problem is making sure how n8n read whatever telegram send to that webhook, since n8n keeps waiting for event even though i sent mulitple messages to the bot.

You can check on which URL the telegram is sending to with the HTTP node. Replace the url part <my_bot_token> with the actual token