iptables در واقع ابزاری برای packet filtering که اگر اشتباه نکنم در Network Layer کار میکنه. همچنین، یکی از زیر شاخه های iptables ایجاد تغییر در firewall هست، اما این برنامه کلا کاربرد بسیار گسترده تری داره.
خط اول که نوشته بودم در واقع کاری بیشتر از packer forwarding ساده بین دو interface رو انجام میداد و اون انجام Network Address Translation بود، اما ظاهرا این عملیات در شبکه شما انجام میشه و شما فقط قصد ارسال packet از یک شبکه به شبکه دیگر رو دارید که دو خط اجرایی شما همونکار رو انجام میده. به این معنی که بدون انجام دادن هیچ Routing تنها packet ها رو از یک interface به interface دیگری میفرسته.
دستور iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE به این صورت عمل میکنه:
1. عملیات NAT رو با رجوع به NAT table سیستم شما انجام میده با این سوئیچ table nat--
2. عملیات POSTROUTING به معنی تغییر دادن packet هایی است که قراره فرستاده بشوند. چون من فرض کرده بودن شما به NAT Server احتیاج دارید، پس لازمه ترجمه آدرس تغییر packet هاست، چون آدری جدید باید در اونها جایگزین آدرس قدیمی بشه.
3. MASQUERADE به معنی پوشش مبدل بر تن کردن، نقریبا معادل عملیات NAT است و در اینجا به همراه NAT به معنی assign کردن یک شماره IP داخلی fix به interface خروجی که packet ها را هدایت می کند می باشد. در کل، این دستور interface خروجی رو رابطی برای دریافت packet های ترجمه شده فرض میکنه.
iptables بحث بسیار گسترده و شاید تا حدی پیچیده در شبکه هست. بهترین مرجع هم خود لینوکس هست که با دستور
man iptables
میتونید، راجع بهش اطلاعات بیشتری بدست بیارید. تو اینترنت هم tutorial زیاده مثل اینجا
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید