Port Forwarding dari jaringan dalam ke jaringan dalam (hairpin NAT)

16

Saya telah berhasil menyiapkan penerusan port pada router Mikrotik yang menerjemahkan setiap permintaan ke alamat IP WAN pada port 8844 (katakanlah: 20.20.20.22:8844) dari mikrotik ke alamat ip lokal dan port yang sama.

Karena saya memiliki nama DNS untuk alamat ip WAN (20.20.20.22), saya ingin aturan ini juga berfungsi dari jaringan dalam:

192.168.111.77 -> 20.20.20.22:8844 -> 192.168.111.2:8844

Saya telah menemukan halaman web Mikrotik yang menggambarkan situasi ini: http://wiki.mikrotik.com/wiki/Hairpin_NAT Tetapi saya tidak dapat mencapai hal yang sama.

Ini adalah printscreen dari aturan tersebut

masukkan deskripsi gambar di sini

Ini hanya sebagian layar cetak tetapi yang lainnya tidak disetel (kosong).

EDIT: aturan penerusan port dan topeng klasik pada router terlihat seperti ini:

/ip firewall nat
add chain=dstnat in-interface=ether1-gateway protocol=tcp dst-port=8844 \
  action=dst-nat to-address=192.168.111.2 to-port=8844
add chain=srcnat out-interface=ether1-gateway action=masquerade
Joudicek Jouda
sumber

Jawaban:

16

Solusinya adalah menulis ulang port forwarding agar tidak menggunakan in-interface = ether1-gateway , tetapi dst-address-type = local :

/ip firewall nat
add chain=dstnat dst-address-type=local protocol=tcp dst-port=8844 \
  action=dst-nat to-address=192.168.111.2 to-port=8844

Kemudian tambahkan NAT jepit rambut seperti yang ditentukan dalam posting asli:

/ip firewall nat
add chain=srcnat src-address=192.168.111.0/24 \
  dst-address=192.168.111.2 protocol=tcp dst-port=8844 \
  out-interface=bridge-local action=masquerade
Joudicek Jouda
sumber
Saya tidak dapat mengaktifkan ini jika menggunakan jembatan. Ada ide?
pcunite
@ pcunite: baru saja menguji ini dengan RouterOS 6.24 + bridge-local dan berfungsi dengan sempurna!
lifeofguenter
@JoudicekJouda Saya juga mengikuti instruksi pada wiki wiki.mikrotik.com/wiki/Hairpin_NAT tetapi mereka tidak pernah mengatakan untuk menggunakan dst-address-type = local pada aturan port forwarding daripada di-interface = ether1-gateway . Mengapa hal itu membuat perbedaan, saya bertanya-tanya?
Jonathan Komar
0

Nat Masquerade 192.168.111.0/24 hingga 192.168.111.0/24 ini berfungsi untuk setiap layanan sekaligus. jangan tentukan antarmuka atau porta. port internal harus sama dengan port eksternal.

user721084
sumber
1
Selamat Datang di Pengguna Super! Jawaban Anda dapat ditingkatkan dengan memberikan sedikit lebih detail cara mengimplementasikannya, terutama bagi mereka yang mungkin baru mengenal sistem yang dimaksud.
Saya katakan Reinstate Monica