I'd like to know how it all works.
I can give you a quick summary...
When one computer sends information over the internet, it's sent as one or more
packets.
Each packet contains, a destination ip (Internet Protocol) address, a protocol type
usually, tcp, udp, or icmp, a port or type id, some control fields, and the actual data.
For tcp and udp, a port id or number will be included, that is used by the receiving
computer to decide which program should be used to process the data in the packet.
For ICMP, there will be a type field, indicating what the data is for.
UDP - User Datagram Protocol is used to send a message to another computer, when
no response is expected. One example is windows messenger spam, which is normally
sent to udp port 1026.
ICMP - Internet Control Message Protocol is used primarily to report errors in the
transmission of TCP packets, although it can also be used to get information from
another computer, such as the current time, etc. The type (and sometimes an
additional code field), indicate what info is being supplied, or requested.
TCP - Transmission Control Protocol - is used when information has to be sent
in both directions. The packet will have both destination and source ip addresses,
and port numbers.
When you want to view a website, your browser will generate a TCP packet with
the destination address set to the ip address of the website, a destination port of
80 (which is the port number usually assigned to HTTP aka web servers), a source
address set to your ip address, and a source port number generated by your computer,
that it has assigned to your web browser.
In order to receive the packet, the computer at the website's address must be setup
to allow incoming packets from your ip address, destined to port 80. When it receives
the request, it gives the packet to the web server, which generates a TCP packet with
your ip address as the destination, and port number assigned to your browser, with
the data for your browser to display.
Your firewall keeps track of where it's sent packets to, and accepts the response, and
gives the packet to your browser, to format and display on your screen.
If your computer has no servers running, such as p2p software, then it will automatically
reject all incoming packets, that are not responses to previously sent outgoing packets. You
don't need a firewall unless you have one or more servers running.
A default install a M$ operating system prior to XP SP2 will include servers, such as file
and printer sharing, distributed computing remote procedure call, etc.
You may also have other software such as your own web server, for testing, that you
don't want other to be able to access. In these cases, you need a firewall, to control
which ip addresses (if any), are allowed to send packets to your computer, other then
the responses to packets from your computer.
*** Actual answer to your subject line follows ****
When your firewall gets a packet that you don't want, many firewalls will alert you of this,
to advertise that it's doing it's job. You can and should turn off such alerts. The only use
for info about rejected incoming packets, is if you're trying to id an infected computer, the
source of messenger spam (for sending complaints), or the source of a denial of service attack,
where your computer is being sent so many unwanted packets, it can't keep up. This info
should come from a log file, not popup messages.
*** End of Actual answer to your subject line<G> ****
In addition, malware (trojans, spyware, adware, viruses, worms, remote administration tools,
etc.) often use the internet to either phone home, or spread. A good firewall (i.e. not M$), will
alert you to the connection attempt, and allow you to block it. This is often an end user's first
alert to the presence of malware on their computer. Finally bringing the response on topic
for the newsgroup<G>.
There's quite a few details I've left out, such as the use flags, name servers, etc, but I think
the above should be sufficient for a layperson to grasp the concepts. If you'd like to get into
more of the details, a good place to start is
http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/ip.htm
Regards, Dave Hodgins