This is rapidly becoming off topic, but I wanted to mention that hardware firewalls often may be configured to block certain ports at particular times of day. For example, I have a Netgear WGR-614v4 -- It allows me to block access to the Internet entirely, based on time of day, or to just block certain ports (for example, AIM).
A hardware firewall is often a simple, foolproof, and robust solution. My particular hardware router isn't unique in these capabilities; most consumer hardware routers have pretty good firewalls built in.
As far as using Perl, the problem is that software firewalls are very low level. They must place themselves between the OS's networking layer and any (and all) software running on the computer. It's a tricky thing to do, and for the most part, better done in a systems language. ...at least when speaking of software firewalls on non-dedicated systems.
Are you posting in the right place? Check out Where do I post X? to know for sure.
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
Want more info? How to link or
or How to display code and escape characters
are good places to start.