Puncte:0

Problemă cu TFTP și IPTables și (s)-NAT

drapel bd
HMH

Am câteva probleme cu descărcarea TFTP în spatele NAT folosind IPtables și chiar aș putea folosi ajutorul tău. Sunt familiarizat cu principiile de rețea, dar destul de nou în IPtables, așa că îmi pare rău dacă fac ceva complet greșit.

Am un server care rulează Ubuntu 20.04 cu două NIC-uri și care încearcă să se conecteze la un server TFTP. În timp ce totul funcționează perfect în regulă, primesc un timeout când încerc să fac TFTP. Am o suspiciune bazată pe un tcpdump, unde văd niște trafic icmp care (poate) nu este tradus corect, dar nu sunt sigur..

Informații de topologie

Server TFTP: 130.221.69.14:udp\69
MyServer (TFTP-CLIENT):
eth0 = uplink / 172.25.17.6
eth1 = downlink / 10.14.254.0/24 (Care NAT este la eth0 cu configurația de mai jos)


IFACE_WAN=eth0
IFACE_LAN=eth1
NETWORK_LAN=10.14.254.0/24

... iptables config

echo "1" > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -o $IFACE_WAN -s $NETWORK_LAN ! -d $NETWORK_LAN -j MASQUERADE
iptables -A FORWARD -d $NETWORK_LAN -i $IFACE_WAN -o $IFACE_LAN -m stare --state RELATED,STABLISHED -j ACCEPT
iptables -A FORWARD -s $NETWORK_LAN -i $IFACE_LAN -j ACCEPT

Când fac un tcpdump pe eth1/$NETWORK_LAN (ÎNAINTE NAT) văd:

Nu văd niciun trafic ICMP aici.

root@swmgmt:~# tcpdump -i eth1 -n dst 130.221.69.14
tcpdump: ieșirea verbosă a fost suprimată, utilizați -v sau -vv pentru decodarea completă a protocolului
ascultare pe eth1, tip link EN10MB (Ethernet), dimensiunea capturii 262144 octeți
20:38:34.901901 IP 10.14.254.164.59384 > 130.221.69.14.69: 38 RRQ octet „switch-config/by-name/switch1”
20:38:38.897841 IP 10.14.254.164.59384 > 130.221.69.14.69: 38 RRQ octet „switch-config/by-name/switch1”
20:38:43.899754 IP 10.14.254.164.59384 > 130.221.69.14.69: 38 RRQ octet „switch-config/by-name/switch1”
20:38:49.903083 IP 10.14.254.164.59384 > 130.221.69.14.69: 38 RRQ octet „switch-config/by-name/switch1”
20:38:56.907874 IP 10.14.254.164.59384 > 130.221.69.14.69: 38 RRQ octet „switch-config/by-name/switch1”
20:39:04.908915 IP 10.14.254.164.59384 > 130.221.69.14.69: 38 RRQ octet „switch-config/by-name/switch1”
20:39:12.909728 IP 10.14.254.164.59384 > 130.221.69.14.69: 23 EROARE EUNDEF „Sesiune încheiată”

Când fac un tcpdump pe eth0/$NETWORK_WAN (DUPĂ NAT) văd:

Văd traficul icmp aici?

20:21:31.898048 IP 172.25.17.6.59650 > 130.221.69.14.69: 38 RRQ octet „switch-config/by-name/switch1”
20:21:31.899090 IP 172.25.17.6 > 130.221.69.14: ICMP 172.25.17.6 udp port 59650 inaccesibil, lungime 55
20:21:39.024682 IP 172.25.17.6.59650 > 130.221.69.14.69: 38 RRQ octet „switch-config/by-name/switch1”
20:21:39.025524 IP 172.25.17.6 > 130.221.69.14: ICMP 172.25.17.6 udp port 59650 inaccesibil, lungime 55
20:21:47.029243 IP 172.25.17.6.59650 > 130.221.69.14.69: 38 RRQ octet „switch-config/by-name/switch1”
20:21:47.030220 IP 172.25.17.6 > 130.221.69.14: ICMP 172.25.17.6 udp port 59650 inaccesibil, lungime 55
20:21:55.030448 IP 172.25.17.6.59650 > 130.221.69.14.69: 23 EROARE EUNDEF „Sesiune încheiată”

Orice ajutor ar fi foarte apreciat!

Cu stimă Tor.

Puncte:2
drapel fr

Probabil că trebuie să încărcați tftp NAT helper, deoarece tftp este unul dintre aceste protocoale care nu se joacă bine cu NAT.

Încerca modprobe nf_nat_tftp.

Notă: Informațiile de mai sus provin de la un sistem care folosește nftables, nu iptables. Kilometrajul dvs. poate varia. În orice caz, încercați să-l găsiți sub /lib/modules/<versiunea-kernel>/kernel/net/ director, probabil într-un subdirector netfilter la nivelul superior sau sub directoarele ipv4 sau ipv6.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.