IPTables

From WBITT's Cooker!

Revision as of 06:41, 27 February 2011 by Kamran (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Introduction

IPTables is the mechanism for packet "Filter"-ing, in modern Linux distributions. In addition to packet filtering, it also does other interesting things such as "NAT"-ing and "Mangle"-ing. To be more specific, IPTables is the user-land application, which is used to manage/configure various packet handling "tables" provided in the Linux kernel (Linux Kernel Firewall). IPTables is the default packet handling application in 2.4 and 2.6 series kernels. In 2.2 series kernels it was an application named "IPChains"; and in 2.0 series kernel, it was "IPFWAdm". In addition to looking at the source and destination IP addresses, IPTables also has the ability to monitor the "state" of the packet. This makes iptables also work as a "stateful" firewall. A stateful firewall can check context of the packet, to evaluate if it is a NEW packet, a packet related to a previous communication, or a packet from an already ESTABLISHED communication, etc. It can also inspect various TCP flags in a packet, such as SYN, ACK, FIN, etc, and can take action.

Note: We would be using the word "iptables" in lower case. It is same as IPTables.

You may be encountering the term/word "NetFilter", whenever you are reading any text related to IPTables. Netfilter and iptables were initially designed together, in 1998, so there is some overlap in early history. The Netfilter maintainer Patrick McHardy proposed to replace iptables with nftables in the future. The project is currently in the alpha stage of development.


References

Personal tools