1 votes

UDP NAT traffic but no response on MikroTik RouterOS

J'ai un routeur MikroTik avec le firmware v7.1beta2 installé

Son WAN (eth1) a une adresse IP de 192.168.7.122

Il y a deux appareils connectés à son LAN

  • L'appareil #1 est un serveur Web, communicant sur le port 80 TCP 192.168.88.254
  • L'appareil #2 est un PLC qui communique sur le port 9999 UDP 192.168.88.250

J'ai réussi à configurer un dst-nat pour exposer le serveur Web de l'appareil #1 sur le port 8080 depuis le WAN.

Cependant, je n'arrive pas à faire communiquer le PLC à travers le NAT. J'ai configuré le dstnat de manière similaire au serveur Web, en changeant uniquement le port, l'adresse et le protocole. Voici ce que j'ai configuré actuellement:

Chaîne: dstnat
Protocole: 17 (udp)
Port Dst: 9999
Action: dst-nat
Journal: x
Vers Adresses: 192.168.88.250
Vers Ports: 9999

J'ai désactivé tous les drops sur le pare-feu.

Lorsque j'utilise l'utilitaire de communication et que je le pointe vers l'adresse WAN avec le port configuré: 192.168.7.122:9999 et que je cherche l'appareil, le RateGraph MikroTik montre une augmentation (donc il arrive) mais l'utilitaire signale que l'appareil est 'Manquant' (par exemple, il ne reçoit pas de réponse).

Lorsque je me connecte directement au LAN et que je pointe vers 192.168.88.250:9999 directement, l'appareil s'affiche instantanément comme 'Disponible'.

À ma connaissance, l'appareil PLC se fiche que l'adresse source soit du réseau local ou non, car nous avons eu le même modèle communiquant via un NAT par le passé (et je ne crois pas qu'un traitement spécial ait été fait). D'autres matériels sur le terrain utilisent actuellement un socat de UDP 9999 à travers un boîtier Linux (sans NAT) et cela fonctionne parfaitement, donc je serais ouvert à trouver comment configurer un NAT similaire à socat pour les tests.

J'ai également essayé de configurer un srcnat au cas où le dstnat ne renverrait pas le trafic. Voici cela:

Chaîne: srcnat
Adresse Source: 192.168.88.250
Protocole: 17 (udp)
Port Dst: 9999
Action: src-nat
Vers Adresses: 192.168.7.122
Vers Ports: 9999

Cela ne fonctionne pas non plus, et ce srcnat ne montre aucun trafic sur le graphique Rate.

Je suis nouveau sur RouterOS, et les réseaux n'ont jamais été mon point fort particulier (je suis ingénieur logiciel de métier), donc je ne suis pas familier avec les façons de déboguer correctement cette situation, surtout avec RouterOS.

En utilisant WireGuard sur l'hôte tout en étant directement connecté au LAN, je vois à la fois le trafic sortir, puis la réponse.

En l'utilisant pour surveiller via le WAN, il sort mais je ne vois jamais de réponse.

Aide?

0 votes

Pourquoi avez-vous un NAT ici ? Ne pouvez-vous pas vous en débarrasser ?

0 votes

C'est la seule façon que je connaisse d'exposer un port sur un appareil interne via le WAN. Y a-t-il un autre mécanisme ou une autre configuration que je pourrais essayer pour faire passer le trafic directement?

0 votes

Mais vous avez une adresse RFC1918 sur l'interface "WAN". N'est-ce pas juste une autre partie de votre propre réseau?

1voto

buffer_overflow Points 715

J'ai eu le même problème, mais il semble qu'il y ait une solution sur le wiki de Mikrotic: https://wiki.mikrotik.com/wiki/Tips_and_Tricks_for_Beginners_and_Experienced_Users_of_RouterOS#Port_forwarding_on_RouterOS

En plus de la règle srcnat que j'ai ajoutée

/ip firewall filter add chain=forward action=accept in-interface=wan_interface connection-nat-state=dstnat connection-state=established,related

avant la règle FastTrack et cela semble avoir fonctionné

0 votes

Oui! Cela m'a mis sur la bonne voie pour résoudre le problème. J'ai dû légèrement modifier la règle pour également permettre les états de connexion nouvelle et tout est rentré dans l'ordre.

0voto

CenterOrbit Points 111

En fin de compte, la solution que j'ai trouvée a été de flasher le routeur (RB750Gr3) avec OpenWrt et de le configurer de la même manière que je l'avais fait sous RouterOS. Tout fonctionne parfaitement comme prévu.

Alors que je ne considérerais pas nécessairement le "changement du système d'exploitation" comme une solution viable au problème, j'ai passé plusieurs jours à essayer de comprendre ce que je faisais de mal avec une simple redirection de port NAT, pourtant j'ai réussi à accomplir exactement la même chose sur le même matériel en moins d'une demi-journée (y compris comprendre comment flasher un système d'exploitation différent sur le matériel).

C'est dommage, car je commençais vraiment à aimer RouterOS avec ses fonctionnalités approfondies, mais OpenWrt est également très agréable.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X