Welcome to my eighth edition to my "Networking Simplified" series.

This tutorial is particuarly for unix users as it goes over the following:



and those will probably be the only ones as they are very complicated programs for one tutorial

to cover more than the above listed.

I will go in chronological order for the only reason as to have some sort of index from the list

mentioned at the top.

First, iptables.

iptables command [options]

This is a system adminstators command. As a regular user, ie someone with a uid (user id) above 0 will norm-

ally not be able to run this. I am not going to discuss its old firewall capabilities (ipchains) because they

are obsolete for kernels above 2.4. What iptables does is configure netfilter just as old ipchains was.

ipchain rules are made to set criteria for packets. these rules ask for a target, which it then applies the criteria if it does indeed match.

The rules are organized into chains (hence the name of ipchains which was used foreeevver, i bid goodbye to you

ipchains.) I will go over a few commands use with ipchains, for more examples bash$ man ipchains.


iptables -D chain rules >> delete specified chain rules.

iptables -F chain rules >> remove all rules, if no chain is specified, removes ALL rules.

iptables -C chain rule >> check the chain rule.

iptables -N chain >> create a new chain.

iptables -L[chain] >> list chains

iptables -P chain target >> set default policy for built in chain.


Now there are tons and tons of more commands and paramaters integrated in iptables, dont get me wrong, this tutorial's focus is to explain

basic ones and get the user familiar with what each of these does.


nslookup [-option....] [host-to-find] - [server]]

This is a tcp/ip command. What it does in all basicalities is query nameservers for domain and host information.

It does not require anything appending from it in order to run, besides the ip address or hostname of course.

nslookup is not near as advanced in usability as iptables, so i can go over more commands to append from it.

But first I will give you an example of an nslookup command going through.

[root@bytekill root]# nslookup bytekill.net
Note: nslookup is deprecated and may be removed from future releases.
Consider using the `dig' or `host' programs instead. Run nslookup with
the `-sil[ent]' option to prevent this message from appearing.

Non-authoritative answer:
Name: bytekill.net

[root@bytekill root]#

which is what is returned with a non-appending command with parameters.

interactive commands = -keyword[value]

exit >> exit nslookup


connect with finger server or host

lserver domain - change the default server to domain (initial server)

root - change defalut server to the server for root or dns

server domain >> change the default server to domain. (current server)

set keyword[=value]

Change state information affecting lookups: examples are:

all - print current values


set query class to IN (INTERNET), CHAOS, HESIOD, or ANY. The Default is IN for internet again.

domain=name Change the default domain name to name.

passwd[user] >> change default password.

paste[options] files

merge lines, separated by |'s (vertical columns)


Have fun with nslookup!

Hope you enjoyed this tutorial, feedback is appreciated - er0k@bytekill.net