Saya perlu membuat koneksi TCP di mana klien spoofing IP-nya untuk semua lalu lintas keluar. Upaya pertama saya adalah menambahkan aturan ke rantai POSTROUTING seperti:
iptables -t nat -A POSTROUTING -p tcp --dport 5555 -j SNAT --to-source 192.168.1.1
Ini berfungsi untuk paket SYN, tetapi tidak menangkap dan menulis ulang ACK yang berasal dari klien. Pemahaman saya adalah ini karena ACK hanya melewati rantai OUTPUT, tidak pernah mengenai POSTROUTING. Upaya saya berikutnya adalah menggunakan xtables-addons dan melakukan SNAT mentah seperti:
iptables -t raw -A OUTPUT -p tcp --dport 5555 -j RAWSNAT --to-source 192.168.1.1
iptables memberi saya kesalahan pada perintah ini berdasarkan target. Saya percaya ini didasarkan pada target karena -J DROP dan -j MENERIMA keduanya bekerja. Halaman manual secara khusus mengatakan bahwa RAWSNAT valid dalam rantai OUTPUT dan saya telah memverifikasi bahwa modul xt_nat.ko dimuat ....
Adakah yang memiliki wawasan tentang apa yang terjadi dengan RAWSNAT atau memiliki cara untuk mendapatkan SEMUA lalu lintas koneksi keluar untuk melewati rantai POSTROUTING di tabel nat? Saya belum dapat mengetahui apakah MARK atau CONNMARK dapat membantu saya di sini berdasarkan dokumentasi yang telah saya baca.
Jawaban:
Saya memiliki masalah yang sama dan saya menemukan tautan https://github.com/nawawi/xtables-addons/commit/9414a5df343bf30ba13e76dbd7181c55683b11cb . Sejak 2013, ekstensi RAWSNAT / RAWDNAT telah dihapus dari xtables-addons.
sumber