The FireBrick 105 is a sophisticated router/firewall product that is designed to be the key device between the
internet and your network. It provides state tracking firewalling and routing as well as useful features such as
network address translation and automatic IP address allocation. The FireBrick has a number of optional
extras making it invaluable at home or in an office. Whilst it is only a small box, it has the power to handle the
fastest 8Mb/s ADSL internet links running flat out and handle hundreds of computers in a large office network.
Using this manual
This manual covers the basic operations clearly and simply, and acts as a reference. There are sections for
each of the FireBrick configuration icons, and sections describing the underlying functionality of the FireBrick.
Each section has at the end a Technical Reference which goes in to much more detail about that section with
a number of key technical points and notes listed. There is also a section describing each of the optional extra
features that are available. Generally, the manual will describe the operation with most features installed, and
so your FireBrick may be missing some of the options listed if you do not have all features.
Basic terms
There are some key terms used throughout the manual which it is useful to understand. Please read these
first.
Local Area Network. This is a group of devices connected together, normally using ethernet, which
LAN
LAN,
WAN,
DMZ
IP
Mask
PortEnd point identity used by TCP and UDP protocols, a number 1 to 65535
TCP
UDP
DNS
can communicate directly with each other. It can include cables, hubs, switches, and even wireless
access points.
LAN, WAN (Wide Area Network) and DMZ (DeMiliterized Zone) are used to describe the sides of a
firewall. They are all LANs but the WAN is used to describe the outside (connected to the rest of the
world), The LAN is the inside connected to your network, and any DMZs are used for servers which
are typically protected from the WAN but from which your LAN is protected in case such machines
are compromised. Normally the single port on the left is the WAN and the 4 ports on the right are the
LAN.
Internet Protocol. An IP address is four parts with dots, e.g. 192.168.0.1. The FireBrick supports only
conventional IP (version 4).
(Netmask, Subnet mask) is used to define the size of a local area network. Usually shown in the
same format as an IP address, e.g. 255.255.255.192, but also shown as a bit count on the end of an
IP address, e.g. 192.168.0.1/24. See Networks for more details.
Transport Control Protocol − used for most session based communications such as web pages,
email, etc.
User Datagram Protocol − used for realtime and transaction based communications such as DNS
and voice over IP.
Domain Name Service − the way in which machine names are converted to IP addresses, and
various related functions.
Getting started
A quick start guide is included with your FireBrick (PDF).
It is very simple to connect your FireBrick to an existing network and make use of it's facilities with no
additional configuration. Once connected, it is simple to access the configuration pages and make any
Introduction1
FireBrick 105 Manuals
changes you wish.
There are 5 ethernet ports on the front of the FireBrick. The one of the left is normally the WAN side, and the
4 on the right are normally a high speed network switch connected to the LAN side. All ports support
10base−T and 100base−T as well as Full and half Duplex automatically and also have auto crossover to
avoid any confusion with straight or crossover cables. The power connector is at the rear and should be used
with the supplied power supply or equivalent.
Connecting a FireBrick in to an existing network
Check you have internet access from your computers.1.
Locate the router which connects your network to the internet. If you have ADSL, then this will
2.
probably also connect to a telephone socket. It should have a cable which connects from it to your
network. It may have more (perhaps up to 4). If you find something with more cables, e.g. 8 or more,
that is probably a switch or hub and not the router.
Place the FireBrick near this router and connect the power. The lights will cycle on the front.3.
Remove the cable(s) from the router which connect the router to your network, and plug them in to the
4.
right hand side of the FireBrick. It does not matter which of the 4 ports they connect to. As you
connect each cable, the green light above the cable should light after a second or two.
Connect a cable (one is supplied) from the single left hand port on the FireBrick to the socket on the
5.
router from where the previous cables were removed. If there is more than one socket, any will do.
When you do this the light above the port on the FireBrick should light up after a second or two.
Check you still have internet access from your computers.6.
Use one of the computers with web browser to access http://my.FireBrick.co.uk/ where you should
7.
see a configuration screen.
Connecting a FireBrick to a PC for stand alone configuration
Connect the power. The lights will cycle on the front.1.
Connect a cable from one of the 4 ports on the right to your PC. The light over the port on the
2.
FireBrick should come on after a second or two.
Configure your PC to have IP address 217.169.0.2 with netmask 255.255.255.2523.
Use a web browser on your PC to access http://217.169.0.1/ where you should see a configuration
4.
screen.
Factory reset
It is quite possible with any firewall product to mis−configure the unit so that you are unable to access it or
make further configuration changes. Whilst this is unlikely, if this happens then the only option is a factory
reset. As a security product, there are no back doors to help you if you forget the passwords you have set.
To factory reset:−
Disconnect the power and all network leads1.
Connect a network lead from the Left hand single port to the right hand port of the four ports on the
2.
right.
Connect the power and wait 2 seconds3.
The green POWER light should be blinking4.
Disconnect the network lead5.
The FireBrick will factory reset immediately6.
There are alternative factory resets which can be used depending on which of the 4 ports on the right are
connected to the single port on the left. If the left hand port is used then the factory reset will include DHCP
client on the WAN and DHCP server+client on the LAN. If the middle ports are used then they have the same
effect as their adjacent end port but the WAN and LAN become reversed such that the single port is the LAN
and the four port switch is the WAN.
Introduction2
FireBrick 105 Manuals
Basic configuration
Accessing the FireBrick web pages there are a number of basic configurations steps which are
recommended. You will find that the web pages have prompts to take you through these steps as follows:−
Setting an admin password. The FireBrick has a username/password security system, and you can
1.
define a number of users with different levels of access. Initially it is sensible to set a password on the
admin user.
Logging in as Administrator. Having set a password you should log in using that password. This
2.
allows you access to all of the FireBrick features, and you will see many more icons on the
administration pages once logged in.
Removing default view/edit rights from the nobody user. Without a password you still had some
3.
access to the FireBrick and it is sensible to now remove that access so that anyone accessing the
FireBrick web configuration pages must login before they can do anything.
Once an IP address is set up you may find you have to log in again − this is because the FireBrick will
4.
have just set its clock from the internet.
The features menu under the Setup icon allows you to check you have all features installed. If you
5.
purchased any extra features with your FireBrick then they will be installed at this point.
Registration − by registering your FireBrick you can receive any notices by email advising of new
6.
software, features, or security alerts. Registration may also provide additional extended warranty.
Tips
Moving entries
Many of the configurations entries have a small green dot next to each entry − clicking on this dot allows the
entry to be picked up and moved. Once picked up simply select one of the green arrows next to an entry to
move it there. You can change to other pages of the same list first if necessary.
Entering IP ranges
When entering IP ranges you can enter :−
Blank for any range1.
A single IP in thje left hand box for a single IP match2.
The lowest IP in the left box and the highest in the right box as a range of IPs3.
Any IP in the left box and a subnet mask in the right box for a range specified using a subnet mask4.
Any IP in the left box and a subnet bit count in the right box for a range specified using a subnet
5.
bitcount
In the last two cases the range is filled in when saved.
FireBrick Plus and FireBrick SoHo
If you have used a FireBrick Plus or SoHo model in the past, the FireBrick 105 has a number of new features.
See the list of differences.
You can load a FireBrick SoHo or FireBrick Plus configuration in to the FireBrick 105 if you wish.
Introduction3
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Setup
The setup function consists of a number of general setup facilities that can be selected from a sub menu.
Save config
This allows the current configuration of the FireBrick to be saved on your local PC. Selecting save config will
normally cause your browser to pop up with a save box allowing you selected where to save the config. The
default filename is the serial number of your FireBrick, allowing you to save many configs in one directory
without risk of overwritting a different one. Once saved, the config can be reloaded in to the same or a
different FireBrick. It is recommended that after any major changes you save your config
Clear Alert
If an alert is set (using Flash in any filters) then this stays set and the ALERT light continues to flash until you
clear it using this link. The date/time is shown as when the alert was first set (if the clock is set).
Upload/Restore
This allows one of three types of files to be uploaded. Simply select the required file using the Browse button
and click Send.
A flash file can be obtained from the FireBrick software web site. Uploading this will reprogram your
F
W
Config
FireBrick with a new version of software and usually then require the loading of a W file. The FireBrick
will stop operating for up to a minute while flashing new softwate.
A web file contains all of the user interface (web pages) allowing you to manage your FireBrick.
Without this you will see a User Interface Required page where you can load any of these 3 file types.
Normally, for English web pages the file ends in WEN. You must load the version expected, or load a
new flash file or config.
A saved configuration file can also be loaded. This will completely replace the previous configuration
with the new configuration.
LEDs
The LEDs (lights) over each port can be controlled in a number of different ways depending on your
preference. There are 6 pre−defined combinations, a cycling lights option and the option to choose the yellow
and greed LED functions directly. When cycling lights are selected the 4 ports on the right cycle the LEDs
left/right/left all the time.
Ports
The Ports menu allows settings for all 5 ports to be controlled. With the 5PORT option the port configuration
can be selected. Without the 5 port option, the WAN/LAN reverse can be selected. For normal use the
settings should all be left on Auto.
Setup4
FireBrick 105 Manuals
NameInterfaces are normally called WAN or LAN, but you can set the name yourself.
Normally the FireBrick can be connected using a straight or crossover lead to a hub/switch or a
Crossover
Speed
Duplex
DisableCauses the port to be disabled, allowing no traffic in or out.
Throttle
B/Limit
Long
TestThis causes a line test of the port (see below)
Reverse
computer directly. This allows specific select of the crossover mode (MDIX is a normal switch/hub
connection and MDI is a normal PC connection).
Normally the FireBrick detects 10base−T or 100base−T automatically, but the port can be fixed to
only one speed.
Normally the FireBrick detects Full or Half duplex mode, but the port can be fixed to only one
mode.
Causes the speed of traffic in and out to be cut to 128Kb/s. This is not traffic shaping but a crude
packet limit which can be useful for network debugging.
Causes the speed of any broadcast traffic (or mulicast or flooded unicast) traffic to be limited to
128Kb/s. This can help track down and limit broadcast storms or loops and is mainly useful for
network debugging.
Ethernet cables are meant to only run 100m max. This option allows 10base−T sensitivity to be
increased to allow use over longer cables (at your own risk).
This allows the WAN and LAN side to be reveresed. The change takes affect when you reset the
FireBrick
Line test
The line test will take the port out of action for a few seconds and perform a time domain reflectometry
measurement on the cable. The results are indicated on the right of the table when the tests are complete and
remain visible until next reset/power cycle. This type of test can be effective on cables over 3m in length but
the results should always be considered only an approximate indication.
If a cable is connected to a correct hub or switch or computer at the far end then the test simply indicates
connected. If the cable is broken or shorted then this is indicated along with the distance.
Name/etc
This allows the identity of the FireBrick to be set.
This names the FireBrick. Use a short name, usually related to the site name. To
Name
Domain
Administrator
LocationPut the location. This is for your own reference, but also reported if SNMP is enabled.
SNMP Community
SNMP options
avoid problems with email, etc, use domain valid characters (a−z, A−Z, 0−9, and
hyphen).
This provides a domain name. Again, use domain valid syntax. This is used for
DHCP and with the name for emailed messages. Put your valid internet domain.
Put the name of the administrator. This is for your own reference, but also reported if
SNMP is enabled.
If this is not blank, then SNMP is enabled. Put the community name required, usually
just public. Remember that you can use filters to restrict access to SNMP or any
services on the FireBrick if required.
The ifDesc option causes the SNMP ifDesc to be a simple unique number (the SNMP
interface index in the OID) rather than a description. This is because some tools
expect it to be unique (e.g. cfgmaker for mrtg)
Gateway
This defines the general gateway IP address and interface. It is used if there are no matching routes or
subnets.
The recommendation is to make this a subnet and not set a gateway address as such − the subnet can then
have the gateway defined, which could be by DHCP.
Setup5
FireBrick 105 Manuals
Bonding
For full details see the bonding section. This allows up to two pseudo gateways to be specified, and up to four
real gateways to be used in their place on a cyclic basis.
Stealth
This is not how you give the FireBrick and IP address. You can speficy the LAN stealth address on which the
FireBrick will answer even for traffic passing through it. The FireBrick effectively hijacks traffic to this address.
You can also set an address for the FireBrick to borrow on the WAN when setting it's clock, etc. This is
normally the adderss of a machine on the LAN, and the FireBrick hijacks the replies to it's requests which
would otherwise go back to that machine.
Disable ARP
Disable subnet
broadcasts
Disable local
broadcasts
Disable all stealthDisables all stealth operation
Stops ARPs being sent automatically from one interface to another − this stops most
stealth operations being possible in normal operation
Stops subnet broadcasts (i.e. last address in subnet) being treated as stealth
Stops local broadcasts (i.e. 255.255.255.255) being treated as stealth
Time
The FireBrick sets and maintains its clock from the internet. To set the time the FireBrick will need a gateway
and IP (or stealth WAN IP) so as to be able to send time requests to the internet. The default settings are
correct for UK and UK summer time.
ServerSpecify the IP of the time server to try, normally 217.169.0.1
BackupSpecify a second time server to use if the first does not respond, normally 217.169.0.2
Time offsetSelect the base time zone, e.g. for UK it is UTC+0
Summer timeSelect if it is summer time, although this is normally set automatically.
Select the date and month, the Sunday on or after which the clocks go forward one hour.
Start summer time
End summer time
Profile
You can select manual to stop summer time being adjusted automatically. The time
changes at 1am winter time.
Select the date and month, the Sunday on or after which the clocks go backwards one
hour.
The time is set every hour normally, although exactly when in the hour moves about
deliberately. This profile allows this to be restricted to set the clock less often. On power
up / restart, the clock is not set and so it continually tries until the clock is set, ignoring
the profile selected.
Syslog
The FireBrick has an internal log, and can also log to a syslog server. This allows the IP and syslog type to be
set.
Server IPSpecify the IP of the syslog server
PortSpecify the syslog port (normally 514)
TypeSelect the syslog type, local0 to local7
Optional Interface
Optional Source IP
Specify the interface or interface and subnet on which the syslog is to be sent,
otherwise normal routing rules apply
Setup6
FireBrick 105 Manuals
Specify the IP from which syslogs are sent − can be any IP as there is no reply to a
syslog. Normally set automatically. Using a subnet for the interface sets the IP of that
subnet
Optional Gateway IP
Specify the gateway IP to use. Normally set automatically. Setting a subnet for the
interface sets the IP using the DHCP defined gateway for that subnet.
DNS
The FireBrick acts as a DNS relay, and uses DNS itself. This address defines the DNS server it uses.
Log/Filter Options
This allows defaults and options to be defined relating to logging and filtering. See filters for a description of
Blink, Flash, Log, Syslog, and Email.
Default
filter
Event
AlertAlerts are normally more important events that are critical.
DebugDebug messages are general additional detailed information.
Stats
Login OKIf a user login is successful it is logged using these options
Login BadIf a user login fails, it is logged using these options
DHCP OK
DHCP Bad If a DHCP operation fails (e.g. no addresses left) then it is logged using these options.
Ping scanIf a ping based profile goes on or off line it is logged using these options.
Tunnel
state
Large
sessions
Email
server
Test server This sends a test email
From
address
To address This defines the address to which the email is sent.
Holdoff
ProfileEmails are only sent during a selected profile.
QOS TOS
value
This defines the default filter action if no other filters are matched.
Certain events in the FirebBrick are logged as an "Event". This controls if/how such things are
logged. Generally an event is something that happens that is non critical.
Stats are generated automatically every 5 minutes showing usage of each filter and speed lane
and interface.
If a DHCP address is allocated (rather than renewed, which is a debug message), then these
options are used.
Log of tunnel state change (up/down), but does not exclude state changes for tunnels in
"Timeout keep alive" mode as they would happen all the time.
Sessions where more than a specified amount of data is transferred are logged at the end of the
session using these options.
This defines the IP of the email server to use to send emailed log entries
This defines the address from which the email is sent.
Emails are not sent on the first emailable log event happening, there is an initial holdoff (in
seconds) so that related events will appear in the same email. Once sent, there is then an
additional holdoff which is mainly to limit the number of emails that can be sent when there is a
recurring emaillable event.
This allows the specific TOS (type of service) value that is considered to be priority traffic in
bonded tunnels and speed lanes. This defaults to 160 which is typical for SIP phones. If using
VoIP (Voice over IP) then ensure that you set all phones and links to use the same TOS and set
the appropriate value here.
Setup7
FireBrick 105 Manuals
UI Options
Some general UI options can be set which affect the overall operation of the UI.
IP
display/range
Number
grouping
Decimal pointThis allows numbers with a decimal point to use a dot or a comma
SpeedSelect if you prefer to see speeds as KBytes/s (one decimal place) or Kbits/s
Date format
Protocol input
Warning music
Various options allowing you to change the way IP addresses and in particular ranges of
addresses are displayed.
This allows numbers to be shown with no grouping,or commas/dots or spaces every three
digits from the right.
The date format can be an ISO format (YYYY−MM−DD), UK (DD−MM−YYYY), US
(MM−DD−YYYY) or full, e.g. nth Month YYYY
The protocol selection in various places is normally TCP, UDP or ICMP only. This allows a
full selection of all 254 protocols, or an input box to enter a protocol number.
There is normally a tune played on a suitably configured PC which is trying to login to a
FireBrick without the correct username or password. This can be disabled.
Security
See security for a more detailed description of the security model. This allows the general security settings for
control of all of the main icons to be specified.
Features
See features for a more detailed description. This allows the current and availabel features to be listed, and
the FireBrick to be updated with new features.
On a new FireBrick you should configure internet access and DNS and time setting, and then select Install
Assigned Features to ensure you have the full set of features provided with yoru FireBrick installed.
Technical Reference
The name and domain are used in the HELO of outgoing emails, and so should be set using domain
•
valaid characters to avoid problems with some mail servers. Similarly the from and to email addresses
need to be entered carefully.
Emailed logs include the first message logged on the end of the subject line. This can be useful if
•
emailing an SMS gateway.
When cycling LEDs mode is used, the extra dot links control the phase of the lights. FireBricks
•
connected using the WAN port and all set in the mode will synchronise themselves to product a
dramatic effect.
When cycling LEDs mode is used, the left hand port used LED mode 5.•
As soon as internet access from the FireBrick is possible (i.e. IP, gateway, etc) the clock may set and
•
this will usually cause the logged on user to be logged off as the time jumps forward.
If a port is set all manually (no auto) then auto negotiaton is disabled. This allows operation with some
•
types of router which do not understand auto negotiation or have it disabled. You should ensure any
manual settings agree with the settings at the other end to avoid problems.
LED modes for SPEED and DUPLEX are lit for 100Mb/s and Full duplex.•
Setup8
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Users
The FireBrick uses a username/password system to manage security. There can be a number of different
users of the system, and each can have their own access permissions. One user is special, the nobody user,
which defines the permissions before you are actually logged in as anyone else.
Login
If you are not logged in as a specific user, you can select Login on the top left of the screen, and enter a user
name and password. If you are logged in then you have a link to Logout instead. To change to another user,
log out and then log in again.
User settings
NameAllows you to give the user a full name for your reference
SecuritySets the security level of this user and so defines who can view or edit the users details
ProfileDefines the profile when the user can log in or use the FireBrick.
LoginThe login name, i.e. what is typed in to the login box
Allow
from
Page
colour
Timeout
LinesThis defines how many lines are shown on each page of entries in the administration pages.
View
rights
Edit
rights
You can select one or more interfaces from which this user is allowed to log in.
You can select the background colour for the FireBrick configuration pages when that user is
logged in. This can be useful if you manage several different FireBricks as you can give each a
different colour.
This defines the timeout, in minutes, after which the user is automatically logged out if they have
no accessed a page for that long.
There are 8 security levels, 1 to 8, and the check boxes define which security levels this user can
view. This allows the user to see all details of any items at any level that is ticked, but not
necessarily make changes.
This defines which security levels the user has permission to change. Any items with a level that is
ticked can be changed by the this user.
Technical Reference
It is important to also ensure that the nobody user also has permisions from at least the same
•
interfaces as any specific user otherwise that user could not get to the login screen in order to login
(as they are the nobody user until they have actually logged in). E.g. to allow WAN address to a user,
also allow WAN access for the nobody user.
It is not sensible to tick an edit right without a corresponding view right.•
Users9
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Status/information
The FireBrick contains a number of useful information and diagnostic tools as follows:−
Status
WAN/LAN
Serial NumberThis is also shown on the top left.
Base MAC
Time now
Clock last setThe time when the clock was last set. The clock is normally set every hour.
Running sinceThe time when the FireBrick was last reset. Shown if the clock is now set.
This shows the state of the port, green if it is connected, and the speed and duplex
mode
This is the base MAC address used by the FireBrick. The FireBrick uses different MACs
depending on the subnet.
The current time, if set. Note that the setup/UI options allow the format of the time to be
changed
DHCP
This lists all of the DHCP addresses the FireBrick has allocated, the time they are due for renewal (2 hours
after they were issued), the MAC address and the machine name. Where there was no machine name you
can set one manually by entering a name in the input box and pressing return.
The FireBrick tries to keep the same address for each device, and will only re−use an address if it is available
and is the oldest (i.e. not used for the longest). You can manually clear an allocation by clicking on the
interface.
ARP
This lists the FireBrick current ARP table, listing the interface, IP address and MAC address of any currently
active IPs communicating with the FireBrick. If the MAC is all 0's then the device is not (or has not yet)
responding and may be turned off or disconnected.
MAC
The MAC report shows the MAC addresses seen currently on each interface. Against the MAC the interface
name is listed. This allows teh specific prot to be identified. The MAC list includes addresses sent by the
FireBrick as well, and these are marked with the FireBrick's name and not a port name,
Sessions
The session list shows all currently active protocols, and also links for ALl, 1MB, and 10MB. The All link shows
all current sessions, whilst 1MB and 10MB show sessions that have currently transferred more than 1MB or
10MB respectively. Selecting a protocol shows all sessions using that protocol.
The session table starts with an S for Stealth and R for Routed and then the protocol name. Clicking on the
Status/information10
FireBrick 105 Manuals
protocol kills the session.
Next, it shows the interface, IP(s), Port(s) and amount of data send from one end, and the same for the other
end of the session. Normally there is only one IP and Port on each, but where NAT applies or address
mapping is used there may be two IPs and/or ports listed.
Finally, it shows what filter and speed lane is applied to that session.
Log
The log contains everything marked log on the general log/filter setup or specific filters. If the clock is set then
the log shows the time of each entry. There is space for over 1000 log entries, and the oldest entry is lost as
new ones are added.
Selecting log shows the log on a page and keeps that page open watching the log in real time.
Selecting recent shows the log in the same way, but starting from only 5 minutes ago.
Selecting save shows the log but does not follow changes live and clears the log once displayed. This is
useful for saving the log or clearing it.
Counters
The counters section shows counters for various statistics recorded against each port. These are mainly used
for debugging network problems.
The core counters relate to traffic to/from the internal FireBrick routing/filtering core.
The change in the last second is also shown, which can be used to see instantaneous throughput on ports,
etc.
Technical Reference
Note that the status shows the names of the ports which could be WAN and LAN1−4, or LAN and
•
WAN1−4 if the LAN/WAN reverse option applies, or could be any names you have given if you have
the 5PORT option.
The status of a port can show negotiated or not. If negotiated then this means that auto−negotiation
•
was used. There are also notes for errors such as polarity reversed (where the wires within a pair are
swapped). Some hubs/switches are wired incorrectly and show this, but this normally means the
cable is incorrect. Polarity reversal is automatically compensated for. Other faults include jabber
which means a faulty bit of equipment or cable, and remote fault which is a special flag in the auto
negotiation to tell uss that the other end is seeing a fault in what we are sending.
The MACs used are the Base MAC plus the subnet number, or plus 31 if no subnet can be found.
•
This allows different subnets to act as DHCP clients on the same LAN if necessary, each getting a
different address.
When using stealth the MAC report can be a bit confusing. e.g. Traffic from the LAN to WAN shows
•
as LANn on the LAN side, and as FireBrick on the WAN side because the FireBrick will have received
it from LANn on the LAN and sent with the MAC unchanged out on the WAN.
Counters are 32 bit wrapping numbers.•
Status/information11
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Profiles
FireBrick profiles are a very powerful feature. Most settings on the FireBrick have a profile, which is by default
24/7 (always active). There are standard profiles for 24/7, 9−5M−F and 2amSun. Additional profiles can be
based on time, or pinging an address, or manually switch on the main dragon page along with quick filters.
Name
SecurityDefines the security level controlling which users can view or edit this profile.
Profile
Mode
Alert LED
Re−route
Ping addressIf a ping profile, this is the address to ping
Ping TTLThis allows the time to live to be set on the pings.
Optional Interface
Optional Source IP
Optional Gateway IP
24/7Ticking this causes all hours of all days to be set on
As aboveThis allows one day to be set the same as the previous
9 to 5This forces a day to be set for 9am to 5pm
Clr/24
Hours
Allows you to name the profile. It will then appear against most other items with that
name and with Not that name.
Allows this profile to depend on another profile, either AND or OR another [not]
profile. If unsure, leave as AND 24/7
The profile can be time based, or manually controlled, ping based or checking tunnel
state.
This allows the RED alert LED on the front of the FireBrick to be affected by the
profile automatically.
If this is set and a profile changes, traffic is re−evaluated for possible re−routing if
routing rules are based on this profile.
Allows you to specify an interface or interface and subnet via which pings are to be
sent, otherwise normal routing rules apply. This is also used for tunnel state mode to
specify the tunnel.
Allows you to specify the source IP for the ping. This is normally set automatically,
and setting a subnet/interface (above) will set for that subnet specifically
Allows you to specify the gateway IP for the ping. This is normally set automatically,
and setting a subnet/interface (above) will the DHCP gateway for that subnet
The clr option causes the whole day to be cleared, and the 24 option causes the
whole day to be set on
Each hour can be set on or off specifically. This affects timed profiles, and also when
pinging is done.
The profile types are:−
Timed
Enabled
Disabled
The profile is based on the time of day and day of week − you can select on an hour by hour
basis. If the clock is not set then the state (active/inactive) of the profile does not change.
The profile is permanently enabled, the time settings are not relevant. During the selected times,
the profile appears as a check box on the login screen allowing to to be changed to disabled.
Profiles12
The profile is permanently disabled, the time settings are not relevant. During the selected times,
the profile appears as a check box on the login screen allowing it to be changed to enabled.
Ping
Tunnel
state
The profile is based on pinging an IP address which can be via a specific interface and gateway
and also from as specific source addree. Pings are done during the enabled times.
The profile reflects the state of the tunnel specified in the optional intergace. A specific tunnel
must be selected.
Technical Reference
Ping profiles cause a ping to be sent every second to the specified destination. If there is no response
•
for 5 seconds, then the profile is down. Pings continue every second, and if there is one response
then the profile is up.
Avoid making profile inter dependance loops − it will not crash or hang the FireBrick but will have
•
unpretictable results.
FireBrick 105 Manuals
Profiles13
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Shaping rules
The FireBrick can be used to change the rate of traffic using speed lanes. The shaping rules define in to which
speed lane each type of traffic is assigned. They operate much like filters. The first in−profile rule which
matches the traffic in question is applied. If no rules match then the default master lane is used.
NameAllows you to give a name to this rule
SecuritySets the security level of this rule and so defines who can view or edit the users details
ProfileDefines the profile when this rule applies.
SourceThis allows you to specify one or more source interfaces from which the traffic may come
TargetThis allows you to specify one of more target interfaces to which the trafficmay be going
LaneThis specifies the lane to be applied to the traffic
Both waysThis makes the rule work both ways saving making two rules.
Source ports
Target ports
ProtocolThis allows the specific protocol to be specified, or Any.
Port group
Source IP
range
Source IP
group
Target IP
range
Target IP
group
This allows a range of source ports to be specified. Applicable to TCP and UDP. Normally
blank meaning any.
This allows a range of target ports to be specifiied. Applicable to TCP and UDP. Typically just
one port for the specific protocol, e.g. 80 for WWW
Instead of using a source port range, target port range and protocol, then a named port group
can be selected.
Allows the range of source IPs to be specified, or blank for any.
Instead of an IP range, a named IP group can be selected.
Allows the range of target IPs to be specified, or blank for any.
Instead of an IP range, a named IP group can be selected.
Technical Reference
Shaping rules are constantly rechecked in case profiles have moved traffic to a different speed lane.
•
This can mean a few seconds delay in re−assigning traffic.
The target IP and ports are those before any NAT or mapping, altough the rule is actually applied at
•
the end of the process of setting up a new session
Both ways operates on traffic from source IP, source Port and source interface to target IP, target port
•
and target interface as well as from target IP, source Port and target interface to source IP, target
Port, and source interface. I.e. the ports are not swapped as traffic is normally classified by target port
regardless of direction of data.
Selecting Any protocol and no ports set means any protocol. Selecting Any with ports set means TCP
•
or UDP only.
Shaping rules14
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Speed lanes
The FireBrick can manage the rate at which traffic flows using speed lanes. Traffic is placed in a speed lane
using the shaping rules. All traffic in any speed lane is controlled by that lane − the speed is for the total traffic
in the lane.
Speed lanes allow control of the rate at which traffic flows from and to each possible interface. You can select
the interface you wish to view/control, the default being the interface current set for the default gateway
(normally WAN).
Settings
NameSpecify a name for the speed lane, e.g. "slow"
Security Controls which users can view or edit this speed lane
MasterSelect a master speed lane which also applies to this traffic
Rate Min The minimum speed setting in Kbits/s
Rate
Max
Fast
ACK
QOS
msThis allows a number of milliseconds latency to be added to all traffic to that interface via this lane.
The first speed lane is the default which is applied if there is no rule to allocate the traffic. It is also the default
master speed lane of other lanes.
Traffic is assigned to a speed lane using the shaping rules, and the speed limits applied for that lane, but then
the master speed lane is also applied. The master speed lane is usually used to allow the speed of an
external internet feed (e.g. ADSL router) to be set, and allow some traffic to go in a lane marked fast to jump
the queue.
The maximum allowed speed setting in Kbit/s or blank for no limit
This means that this speed lane is not also limited by the master speed lane, but the master lane is
affected by this traffic.
Setting this means that the responses to TCP messages are priority and not delayed. They still
affect the speed lane and so delay other traffic.
This means that traffic with a fast type of service are priority and not delayed. They still affect the
speed lane and so delay other traffic.
This means that traffic may have up to 4 consecutive speed restrictions applied − from a lane and a master
and to a lane and a master.
Statistics
If the clock is set, then various statistics are shown on the speed lanes...
Rate Set
The currently selected rate. Where take is selected, the current rate being used is shown
in brackets
Speed lanes15
FireBrick 105 Manuals
Rate NowThe instantaneous rate indication for the last whole second in KB/s or Kb/s.
Rate 5minThe average rate over the last whole 5 minute period in KB/s or Kb/s
Day ThisThe total transferred so far today, in MB
Day LastThe total transferred in the last whole day, in MB
Month ThisThe total transferred so far this month, in MB
Month LastThe total transferred in the last whole month, in MB
Note that the rate set and now can be displayed in Kbits/s or Kbytes/s depending on UI settings.
Technical Reference
The Fast QOS flag works on packets with IP TOS (type of service) set to the value defined in the
•
setup (default 160, typically for VoIP)
The Fast ACK flag applies to any TCP packets with no payload. It applies if the specific speed lane
•
has Fast ACK set.
Traffic shaping operates by scheduling packets based on the time they would be sent if the link was
•
the specified speed. This allows smooth operation with TCP and other protocols. Packets that queue
jump (e.g. ACK or QOS) are counted and so slow later traffic hence maintaining the overall speed
limits.
Where a master speed lane has a minimum speed set, and there is spare unused capacity below that
•
setting, then that spare capacity is added to the current usage of all subordinate lanes (subject to
specified min and max speeds on each lane). This allows the spare capacity to be shared out. As the
spare capacity is used, the subordinate lanes will move down to their minimum setting. By setting the
max to the same as the min on any lane you can stop spare capacity being taken like this.
Last day and Last month may be distorted if the FireBrick has been running for some time with the
•
clock not set as these figures are updated on change of day or month.
It is important to realise that the speed lane applies to the total traffic in that lane. E.g. if you have a
•
lane of say 64Kb/s, and put web traffic (TCP port 80) down it, then this does not mean that each web
page will be 64Kb/s but that the total of all sessions on that lane is limited to 64Kb/s − the more
simultaneous sessions the less each gets. As such, you can have multiple lanes at the same speed
and assign different traffic to different lanes.
This allows simulation of long latency lines such as satellite links. Note that there is limited buffering
•
capacity, so high bandwidth high latency links can result in packet loss. Latency settings are limited to
a maximum of 5000ms and so not suitable for RFC1149 simulation.
Some internally generated packets are never subject to speed lanes, such as DHCP request/replies,
•
pings for profiles, and tunnel keep alives.
Master speed lanes
Traffic is assigned to a single speed lane using the shaping rules. Each speed lane may then also list a
master speed lane which is also applied. The idea behind this is that you may want to control various types of
traffic which all then go via a simple feed (e.g. an ADSL line). The master speed lane allows you to then
control the rate at which the traffic is actually sent overall. By limiting this you can avoid the external routers
buffers filling. This means that traffic marked fast is able to jump the queue on the FireBrick and then not hit
another queue in the external router. This is particularly useful for voice over IP over ADSL, for example.
Statistics record details of the traffic through the lane in each direction depending on the interface.
•
They are also counted on the corresponding master speed lane.
The from interface statistics includes traffic that has been discarded because of the speed restriction.
•
The to interface statistics only shows traffic which is being sent.
The statistics ar recorded as entries are recieved or placed in the queue, and so may show higher
•
than the rate set even though the rate limiting is working perfectly.
Traffic that is QOS or ACK is unaffected (i.e. not delayed) by its speed lane or the master, but it does
•
contribute to the usage of both and so slows other traffic.
Traffic that is Fast is affected by its own speed lane but not by the master. The master speed lane is
•
however affected by the usage and so slows other traffic. I.e. traffic marked fast effectively stealths
bandwidth from the master speed lane.
Speed lanes16
FireBrick 105 Manuals
Latency added is added for the specific speed lane and the master speed lane for the from and to
•
interface making a total of 20s latency possible.
Speed lanes17
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Subnets
The FireBrick can operate like any conventional network device with an IP address and netmask. However,
the FireBrick can have multiple addresses and be on multiple networks at the same time even on the same
physical network. The subnets allow the network address to be defined as well as DHCP and other settings.
Name
SecurityThis sets the security level and controls who can view or edit this subnet
ProfileThe subnet can be subject to a profile, allowing the subnet to be visible part time
InterfaceThis defines on what interface the subnet operates
IP address
Subnet MaskThis defines the subnet mask applicable.
DHCP Client
Stealth
NAT
VLAN IDFor advanced use
Allocation IP range
DNS servers
Gateway
BOOTP server IPFor advanced use
BOOTP filenameFor advanced use
Exclude gateway
Exclude Time server
Exclude Syslog
server
Exclude DNS server
This allows the subnet to be given a name, but default it uses the name of the
interface. The choice of name is important when used with the DHCP restrict feature
This specifies the IP address of the FireBrick on this subnet. As such it cannot be the
network or broadcast address for the subnet
If selected then this subnet is a DHCP client, and most settings will be overridden
when the FireBrick obtains an address by DHCP. To make a subnet DHCP you do not
need to fill in the IP or netmask or any other details.
Set this if there is a subnet on the other side of the FireBrick with the same IP range
and traffic is to pass through by stealth.
Set this if this a subnet using a private address range and address translation is to be
used
To make the subnet act as a DHCP server, an address or range of addresses can be
specified. This sets the range of addresses that can be allocated.
As a DHCP server, you can specify the DHCP server to issue. Leave blank for the
FireBrick to act as a DNS relay. As a DHCP client, this shows the DHCP servers the
FireBrick received.
This is the gateway applicable for any traffic routed to this subnet.
As a DHCP client, this is filled in automatically.
As a DHCP server, this is given out as the gateway, or if blank then the FireBricks IP
is given out instead.
Setting this means the FireBrick does not issue a gateway address as a DHCP server,
and does not accept one as a client.
Setting this means the FireBrick does not issue a time server address as a DHCP
server, and does not accept one as a client.
Setting this means the FireBrick does not issue a syslog server address as a DHCP
server, and does not accept one as a client.
Setting this means the FireBrick does not issue a DNS server address as a DHCP
server, and does not accept one as a client.
Subnets18
FireBrick 105 Manuals
Exclude Domain
Backup DHCP
Don't checkFor advanced use
DHCP restrictFor advanced use
DHCP MirrorFor advanced use
Setting this means the FireBrick does not issue a Domain name as a DHCP server,
and does not accept one as a client.
Setting this means the FireBrick will not answer the first time for any DHCP client,
allowing another server to answer normally and making the FireBrick a fallback server.
Technical Reference
The FireBrick uses a difference MAC address on each subnet, and so can be a DHCP client multiple
•
times on the same interface.
Subnets that are on an inactive profile do not answer ARPs for their IP, but previous ARPs may
•
remain cached by other machines for a short period allowing traffic to be routed via the FireBrick after
a profile becomes inactive.
When a subnet is made active the FireBrick sends an ARP announcement.•
The FireBrick treats the network address on a subnet as a valid IP and not as a broadcast IP•
The subnet mask can be entered as a dotted quad (e.g. 255.255.255.0) or as a bit count (e.g. 24). It
•
is normally displayed as a bit count.
As a DHCP client the FireBrick sends its name and the subnet name concatenated with a space
•
between as the subnet name.
If stealth is set then the FireBrick will answer traffic for its IP, but other traffic on this subnet can be
•
passed through the FireBrick (subnet to filtering) in stealth mode. If not set, then traffic for any of the
IPs on this subnet are considered to be on that subnet and not passed through as stealth. In
particular, this affects stealth transmission of ARP requests.
The NAT setting causes any traffic from the subnet to be NATed if there was not an explicit route
•
used to direct the traffic. If an explicit route is used then the NAT setting for that route applies. Note
that this means traffic between two private subnets using subnet based routes will NAT if the subnets
are set to NAT even though this may not be necessary if both networks use the FireBrick as a
gateway.
The DHCP range can be one address, a range, or an IP and mask or IP and bit count.•
DHCP allocations check that the address to be allocated is no in use by another machine (using an
•
ARP) and abort if it is. As such addresses can be marked as in use in the status/DHCP report and not
actually allocated. This avoids duplicate IPs.
DHCP allocates are for 2 hours with 1 hour renewal, but allocations are persistent − using the same
•
address each time unless all addresses were exhausted.
As a DHCP client the FireBrick normally checks the address it was offered is not already in use (using
•
ARP) and rejects it if another machine is using the address. This can be disabled with the Don't check
option, and is relevant if something is proxy ARPing an entire block, for example. (e.g. cable modem
services in some parts of Colombia).
The BOOTP server and filername are sent in DHCP and BOOTP responses and allow network boot
•
devices to obtain the information necessary to load.
The FireBrick supports the use of a /31 (255.255.255.254) subnet mask to create a point to point link
•
as per RFC3021. In this case the FireBrick can be either of the two addresses, and will ARP for the
other address. Not all equipment is compatible with this mode of operation and so you should always
test correct operation in such cases.
The FireBrick also supports /32 (255.255.255.255) subnet mask. This means that the FireBrick will
•
ARP for any other address, but that routing will be have to specifically directed to the subnet using
routing rules.
Note that the DHCP gateway is used when any routing sends traffic toa subnet without specifying a
•
gateway − this allows per subnet gateways. It is set when used as a DHCP client.
A more detailed description of routing is shown here.•
DHCP restrict
The DHCP restrict mode allows the DHCP server to give different ranges of addresses to different machines
on the network based on the name or MAC of those machines. The addresses could be on different subnets
completely, or you could have multiple subnet entries with the same IP and netmask each with specific ranges
to allocate on that subnet.
Subnets19
FireBrick 105 Manuals
If a machine wanting an address quotes a name or MAC which starts with the restrict prefix or any subnet,
then it can only have addresses from such subnets. If its name or MAC does not start with the restrict prefix of
any subnet then it cannot use any subnet that has a restrict prefix set but can use any others that are
unrestricted (restrict prefix is blank).
This is all within the restriction of subnets that are DHCP servers on the same interface (and same VLAN if
using VLAN subnets). If you have VLAN subnets then that would normally a better way to manage allocations
than using DHCP restrict.
The matching with the restrict prefix requires that the name quoted when requesting an address, of the full
hex MAC address (no spaces or colons) starts with the prefix specified.
DHCP mirror
The DHCP mirror feature is specifically designed for cable modem situations where a single IP is available on
the WAN using DHCP, but multiple machines may be required on the LAN using private addresses and NAT.
In such cases it is often useful to have at least one machine on the LAN have the external IP address and not
use NAT. This is simple enough except for the fact that the external address may change.
Typical use means that you set a WAN subnet as a DHCP client, and have a LAN subnet as private
addresses DHCP server, but also have a LAN subnet set with DHCP mirror of the WAN subnet. This second
LAN subnet is typically set to use DHCP restrict so that it only applies to one machine matching the subnet
name (the machine that is to use the external address).
When the WAN gets an IP by DHCP, the mirroring LAN subnet is changed so that the FireBrick has the
external gateway address, and it allocates only one DHCP address which is that received on the WAN. An
address mapping entry can then be used to map traffic for the FireBrick on its WAN to the LAN hence passing
through the external traffic (still subject to filtering).
When the WAN address changes, the mirroring LAN changes. The expiry on the mirroring LAN is set so as to
be 10 seconds after the WAN and hence ensure a smooth change of IP on the LAN side as well.
VLAN subnets
VLAN subnets allows the FireBrick to operate with an external VLAN tagging network switch. Any traffic sent
to a subnet with a VLAN ID will be tagged with that VLAN ID, and this can be used on the switch to direct the
traffic to specific ports. This allows groups of actual ports to be assigned to different subnets.
This is particularly useful with DHCP as it allows different ports to get different address ranges. Routing can
also be used to direct traffic to specific VLAN subnets.
Using VLANs on a network switch also means that separate groups of ports can be separated, hence forcing
any traffic between them via the FireBrick and hence subject to filtering rules.
Note that filtering rules apply based on the actual interface, not the VLAN, but can specify IP ranges or groups
to allow control of traffic between specific groups of ports.
If VLAN subnets is not available, all VLAN tags are dropped and ignored by the FireBrick, even in stealth
mode.
Subnets20
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Routes
The FireBrick has to decide where to send traffic. This is done using routing rules. The rules are considered in
order and the first appropriate matching route is applied. The routing list includes the subnets and the deafult
gateway. The default gateway is always at the end, but the subnets can be moved to allow routes to be
considered before or after the normal routes to subnets.
NameAllows you to give a name to this rule
SecuritySets the security level of this rule and so defines who can view or edit the users details
ProfileDefines the profile when this rule applies.
SourceThis allows you to specify one or more source interfaces from which the traffic may come
Send toThis allows you to say what interface the traffic will be sent
Gateway IPThe gateway to use on the specific interface. Blank if ARP is to be used.
WeightFor advanced use
NATSpecifies that traffic is to be NATed when using this route
Proxy ARPFor advanced use
Source ports
Target ports
ProtocolThis allows the specific protocol to be specified, or Any.
Port group
Source IP rangeAllows the range of source IPs to be specified, or blank for any.
Source IP groupInstead of an IP range, a named IP group can be selected.
Target IP rangeAllows the range of target IPs to be specified, or blank for any.
Target IP groupInstead of an IP range, a named IP group can be selected.
This allows a range of source ports to be specified. Applicable to TCP and UDP.
Normally blank meaning any.
This allows a range of target ports to be specifiied. Applicable to TCP and UDP. Typically
just one port for the specific protocol, e.g. 80 for WWW
Instead of using a source port range, target port range and protocol, then a named port
group can be selected.
Technical Reference
Stealth traffic already has a target MAC address on the other side of the FireBrick, and as such the
•
FireBrick already knows the interface and target MAC to use. Stealth traffic is not subnet to the
routing table.
Some traffic has a partial route already, such as address mapped traffic which may be to LAN but not
•
say which subnet, and return traffic for any sessions which should be via the interface on which it
arrived. In such cases routes are only considered if they match the target interface correctly.
Any route that sets an interface with a subnet, but for which a gateway is not defined will use the
•
DHCP gateway defined for the subnet if specified. This is used in such cases before considering the
default route. If there is not gateway defined, and the default is not the same general interface, then
an ARP is done for the target IP, even if outside the known IPs for a subnet.
Proxy ARP is ignored on routes with protocol selection or group, as ARPs do not have an IP protocol.•
Routes21
FireBrick 105 Manuals
See Weighted rules for details on how to use the Weight option. This applies only with the bonding
•
feature.
If an explicit route is picked, then the NAT flag indicates if NAT applies or not. If a subnet route or the
•
default route is picked then NAT is set based on the source IP/subnet being set for NAT.
If a route is set for target Any, then the NAT flag may be set at that point, but the routing continues
•
until an explicit target interface is found
The proxy ARP setting causes the FireBrick to answer ARPs on the source interfaces for the IP
•
range/group specified as the target
Routing is done before filtering as filters operate on the apparent target interface (which is decided by
•
routing)
Routing is also done before any traffic shaping or address mapping wich are done after filtering.
•
Address mapping may however cause routing to be done again if the addresses or interfaces are
charged.
A more detail description of routing is shown here.•
Routes22
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
IP groups
There are a number of places in the FireBrick configuration where a range of IP addresses can be specified,
e.g. filters, shaping rules, address mapping, etc. In most places you can instead select a named IP group.
IP groups provide a convenient means of naming an IP address range or set of IP address ranges.
An example of an IP group which is included in the factory reset is the RFC1918 Private IPs. These are IP
addresses reserved for priavte use and are 192.168.X.X, 172.16−31.X.X and 10.X.X.X.
Name
SecurityThis defines who can view or edit the group
Add new rangeThis allows a new range to be added to the group
DeleteThis deletes a range from the group
EraseThis erases the whole IP group and all of the ranges within it
Give the group a meaningful short name as this is what is shown in the list when
groups can be used.
Logged in users
There is a special group which is not listed in the IP groups section but which can be selected in filters, etc.
This IP of logged in users and is any IP address from which any user is logged in to the FireBrick. This can be
useful to allow access from the location from which you have just logged in to the FireBrick. It also puts a time
limit on the access as users automatically log out after a set time.
Technical Reference
The security on a group does not affect whether a user can use the group.•
You can have a blank range for Any but this is pointless as the whole group becomes Any and you
•
could simply not use a group instead.
You cannot edit an entry, but you can add a new entry and then delete the old one.•
You cannot reorder entries as the order does not matter.•
IP groups23
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Port/Protocol groups
In many places, such as traffic shaping, filtering, routes, etc, you can set a range of ports and protocols to
define the type of traffic being referenced. Some types of traffic use a number of different ports and protocols
but you would want to allow all of these in one filter or use them all in one route. Port groups allow sets of
protocol/port combinations to be defined as a named port group and used instead of specific ranges in filters,
routes, etc.
Name
SecurityThis defines who can view or edit the group
ProtocolThis allows the specific protocol to be specified, or Any.
Source
ports
Target
ports
AddAdds an entry to the group
DeleteDeletes the individual entry from the group
EraseErases the whole port group and all entries within it
Give the group a meaningful short name as this is what is shown in the list when groups can be
used.
This allows a range of source ports to be specified. Applicable to TCP and UDP. Normally blank
meaning any.
This allows a range of target ports to be specifiied. Applicable to TCP and UDP. Typically just
one port for the specific protocol, e.g. 80 for WWW
FireBrick Tunnel Traffic
A default port group in the factory reset config is FireBrick tunnel traffic which uses UDP port 1.
Technical Reference
The security on a group does not affect whether a user can use the group.•
You can add a blank Any entry but this is pointless as the whole group becomes Any and you could
•
simply not use a group instead.
You cannot edit an entry, but you can add a new entry and then delete the old one.•
You cannot reorder entries as the order does not matter.•
The extra handling for ICMP types as applicable to filters does not apply within port groups•
If port ranges are specified with protocol Any then this means TCP or UDP as ports only apply to
•
these
Port/Protocol groups24
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Filters
Filters are the way that the FireBrick provides firewall protection. The FireBrick tracks every session, and
applies filters when that session starts. Once checked against the filters, the session is then allowed even if
the filters later change. Filters are considered in order until one matches, and then the filter rule applied to the
session.
NameAllows you to give a name to this rule
SecuritySets the security level of this rule and so defines who can view or edit the users details
ProfileDefines the profile when this rule applies
SourceThis allows you to specify one or more source interfaces from which the traffic may come
TargetThis allows you to specify one of more target interfaces to which the trafficmay be going
ActionThis defines the main action which applies, Allow, Drop, Bounce or Reject as described belwo
Source ports
Target ports
ProtocolThis allows the specific protocol to be specified, or Any.
Port group
Source IP
range
Source IP
group
Target IP
range
Target IP
group
TimeoutsFor advanced use
TOSFor advanced use
BlinkCauses the ALERT light to blink every time this filter matches.
FlashCauses the ALERT light to start blinking if this filter matches. It blinks until reset.
LogCauses the filter to be logged in the internal log
SyslogCauses the filter to be logged to an external syslog server
EmailCauses the filter to be logged to email
Quick setupShows this filter on the quick setup menu
SuspendCauses this filter to be ignored, like profile Not 24/7.
SYNFor advanced use
BypassFor advanced use
This allows a range of source ports to be specified. Applicable to TCP and UDP. Normally
blank meaning any.
This allows a range of target ports to be specifiied. Applicable to TCP and UDP. Typically just
one port for the specific protocol, e.g. 80 for WWW
Instead of using a source port range, target port range and protocol, then a named port group
can be selected.
Allows the range of source IPs to be specified, or blank for any.
Instead of an IP range, a named IP group can be selected.
Allows the range of target IPs to be specified, or blank for any.
Instead of an IP range, a named IP group can be selected.
Filters25
FireBrick 105 Manuals
End−logCauses logging of the end of the session regardless of the size of the session
Actions
The actions define what happens to the session. Only Allow casues a session to be created.
Allow
DropThe packet is dropped / ignored
Reject
Bounce
The traffic is allowed and the session created. All corresponding reply traffic and further
traffic on the same session is allowed automatically even if the filters later change.
The packet is dropped, and an ICMP admin prohibited filter error message returned to the
sender
The packet is dropped and a valid response is sent to try and annoy the senders system.
This is not a counter attack though.
Statistics
If the clock is set then a number of per filter statistics are available. These are a total of traffic both ways
through the sessions associated with each filter.
Rate NowThe instantaneous rate indication for the last whole second in KB/s or Kb/s.
Rate 5min The average rate over the last whole 5 minute period in KB/s or Kb/s
Day ThisThe total transferred so far today, in MB
Day LastThe total transferred in the last whole day, in MB
Month This The total transferred so far this month, in MB
Month Last The total transferred in the last whole month, in MB
Note that the rate set and now can be displayed in Kbits/s or Kbytes/s depending on UI settings.
Technical Reference
The timeouts, if not blank, define the initial and ongoing timeout for the session in seconds. If blank
•
then defaults are used depending on the traffic. For UDP the default is a long initial timeout and short
ongoing timeout. For TCP it is a short initial timeout and long ongoing timeout. The initial timeout is
the session timeout before any reply has been received. The ongoing timeout is the session timeout
after any reply packet has been received.
If not blank, the TOS mask and value can be set to allow the traffci to be checked for TOS value. The
•
TOS value is ANDed with the mask and check against the value. Note that the TOS of the initial
packet in a session is checked only.
If SYN is set then a TCP session will only match this filter if it has SYN and not ACK set.•
Bypass cuases the filter to be applied as normal, but does not allow a session to be created. This
•
allows per packet rather than sessions based filtering if required. This is much slower but can be used
where a machine is, for example, deliberately port scanning through a FireBrick and so many
sessions would not timeout for a long time.
End log will cause logging as per the log large sessions settings in the main setup menu, which may
•
not be the same as those of the filter.
If filters are moved, then statistics for on−going sessions may become distorted.•
For the Bounce action, the packet is dropped, but for ICMP pings a ping response is generated, and
•
for TCP connections a SYN+ACK response is generated. This simulates a valid connection. The TCP
response has a window size of 0 which will lock up some TCP stacks. The responses are also
randomly slow (around 300ms) and so lower priority compared with real traffic. The bounce mode is
intended to cause annoyance to a would be attacker.
If no filter matches, the default filter is used as specified in the setup menu.•
Before the default filter there is an implicit filter allowing LAN to FireBrick port 80 and allowing
•
FireBrick to any traffic. Explicit filtering rules can however block this default behaviour if required.
Filters are applied after routing is done (as filters used the target interface that has been decided by
•
the routing rules).
Filters26
FireBrick 105 Manuals
Filtering is done before address mapping and so any IPs and ports apply before the addresses are
•
changed.
Filtering is done before NAT is applied•
Filtering is also done before traffic shaping.•
Filters27
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Address mapping
Address mapping allows a change to be made to the ports and IP addresses of traffic going via the FireBrick.
This is the same principle as NAT, but allows more specific changes to be made. All new sessions are put
through the address mapping table, and the first applicable entries is used.
NameAllows you to give a name to this rule
Security
ProfileDefines the profile when this rule applies
Source
Target
Map traffic toThis defines the new interface to which the traffic is to be sent
WeightFor advanced use
Source ports
Target ports
ProtocolThis allows the specific protocol to be specified, or Any.
Port group
Source IP rangeAllows the range of source IPs to be specified, or blank for any.
Source IP groupInstead of an IP range, a named IP group can be selected.
Target IP rangeAllows the range of target IPs to be specified, or blank for any.
Target IP groupInstead of an IP range, a named IP group can be selected.
New target portThis allows the target port to be changed. Leave blank for no change
New source IP
New target IPThis allows the target IP to be changed.
Sets the security level of this rule and so defines who can view or edit the users
details
This allows you to specify one or more source interfaces from which the traffic comes
from
This allows you to specify one of more target interfaces to which the traffic was
originally being sent (after any routing)
This allows a range of source ports to be specified. Applicable to TCP and UDP.
Normally blank meaning any.
This allows a range of target ports to be specifiied. Applicable to TCP and UDP.
Typically just one port for the specific protocol, e.g. 80 for WWW
Instead of using a source port range, target port range and protocol, then a named
port group can be selected.
This allows the source IP to be changed. Leave blank for no change. Set to
255.255.255.255 to cause NAT.
Technical Reference
Both stealth and routed traffic is considered, and any mapped traffic becomes routed.•
Filters are applied before the traffic is mapped•
If a mapping rule matches, then routing is re−done with the new target IP, ports, etc.•
Speed lanes are applied to the pre−mapped IP and ports, but the mapped target interface•
If there is mapping entry the the routing table is reconsidered•
If a target IP range is specified (not an IP group) then the new target IP defines the value mapped for
•
the first of the target range specified. The next is the new IP plus one and so on. i.e. a block of target
IPs is remapped to a blank of new IPs. If this is not required then use an IP group to specifyc the
Address mapping28
FireBrick 105 Manuals
range.
Setting the new interface to a partial interface, e.g. just WAN with no subnet selected, will restrict the
•
routing rules considered to be on that interface.
Setting the new interface to Any will allow the routing rules to decide the new target interface•
Setting the new source IP to 255.255.255.255 causes the FireBrick to use NAT, using an IP
•
appropriate for the subnet on which is eventually sends the packet.
See Weighted rules for details on how to use the Weight option. This applies only with the bonding
•
feature.
Address mapping29
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Tunnels
Tunnels provide a means of accessing remote networks and creating a virtual private network (VPN) to other
FireBricks.
Once a tunnel is created it becomes available in the routing rules as a destination, allowing traffic to be routed
down a tunnel.
Name
Authentication
security
ProfileThis defines the profile applicable to the tunnel
IP at far end
ReferenceThis is the tunnel number of the tunnel at the far end that matches this tunnel
SecretThis is an optional secret (password) which must match the tunnel at the far end
Optional Interface
Optional SourceIPSpecify the source IP for the tunnel traffic. Normally set automatically. If an subnet is
Optional GatewayIPSpecify the gateway IP for tunnel traffic. Normally set automatically. If a subnet is defined
MTUFor advanced use
FixFor advanced use
LimitFor advanced use
Keep−AlivesControls when keep alive messages are sent (see keep alives)
Auth−AllSet to use slower authentication of all outbound packets (see below)
Bonding SetFor advanced use
Bonding BiasFor advanced use
QOSFor advanced use
ReorderFor advanced use
Give the tunnel a meaningful name − this appears in the list of target interfaces for
routing, etc.
This defines who can view and edit this tunnel
This is the IP address of the other end of the tunnel. This can be blank at one end but a
secret should be used in such cases.
Specify the interface and subnet on which the tunnel traffic is to be sent, otherwise normal
routing applies. Note that you have to be careful not to send tunnel traffic down the tunnel!
defined for the interface, uses the subnet IP.
for the interface then the DHCP gateway on the subnet is used.
Routing
Creating a tunnel does not automatically say what traffic is to be sent down a tunnel − you will need to make a
routing rule to specify this. Typically you will have a range of addresses which you know are at the far end of
the tunnel, and will make a route sending those addresses down the tunnel.
Tunnels30
FireBrick 105 Manuals
Filtering
Creating a tunnel does not automatically allow the traffic through the FireBrick. You will need to consider what
traffic you wish to allow from or to the tunnel. In many cases all traffic from Tunnel to LAN or from LAN to
tunnel will be wanted, and so two filters will need to be added to allow such traffic.
The tunnel traffic is wrapped up in another packet to send over the internet to the other FireBrick. This traffic
needs to be allowed. The FireBrick can is allowed to send traffic (unless a filter explicitly blocks it), but it will
not automatically allow such traffic. To allow tunnelled packets through, create a filter allowing traffic to
interface FireBrick on UDP port 1 (or use the FireBrick Tunnel Traffic port group).
Keep alives
Every second the FireBrick can send a small packet to the far end, which is a keep alive. This packet allows
the far end to confirm the tunnel is all working. Both ends send these, and this is how the tunnel is shown as
UP or DOWN. Normally keep alive packets are sent if they are being received, or if the far end has a fixed IP
address. However there are other options. Master causes keep alives to always be sent. Slave causes them
to only be sent if being received. Timeout causes them to be sent if there has been any traffic in the last
minute − this is useful when operating on diulup/ISDN links allowing the link to drop if there is no activity.
Security
The authentication secret can be used to authenticate packets sent. This secret is used to digitally sign
packets so the far end can be sure they are authentic and have not been changed in any way. You have to
enter the same secret at each end.
If a secret has not been set, then the packets are not authenticated. However, the far end fixed IP is still
checked, and this can be adequate security for most purposes.
There is an overhead to digitally signing and checking all of the packets sent, which can mean slower
throughput. To reduce this effect the FireBrick will normally send unsigned data packets once the tunnel is
established both ways. These are checked to be from same IP address as the previous (authenticated) keep
alive packets recently received. There is an option Auth−All which forces all of the transmitted packets to be
digitally signed. In this mode, the receiving FireBrick checks all packets so they cannot be spoofed by
someone else and sent unsigned. This also applies automatically if the FireBrick at the other end is an older
model (older software or a Plus or SoHo) and cannot accept unsigned packets.
Note that tunnel traffic is not encrypted.
Tunnel status
If the tunnel receives keep alive messages or any data it will shows as UP. If not then it shows as DOWN. In
some cases you may see UP/DOWN where the FireBrick receives data from the far end, but the far end is not
receiving data from this FireBrick. If a tunnel is not UP, then it is normally excluded from consideration as part
of a tunnel set − the exception is when Timeout keep alive mode is used as you cannot be sure if the tunnel is
UP or DOWN as it may simply have timed out. There are also tunnel set statistics (used with Bonding) which
show the ordering of packets received, and how effective packet reordering is.
Technical Reference
FireBrick tunnels work using a FireBrick Lightweight Tunnelling Protocol which works with other
•
FireBricks and for which there is also an open source linux implementation.
Tunnelled packets are sent from and to UDP port 1. Address mapping rules can be used to change
•
this if necessary.
FireBrick tunnels will work via NAT and reply to the port from which traffic was sent.•
It should be noted that if two ends of a tunnel are set correctly with specified IPs and send keep alives
•
enabled, then there is no need to set an incoming filter to allow UDP port 1 as the traffic from the
Tunnels31
other end appears as replies to the outgoing traffic and so matches the session.
The MTU defines the size of packet that can always reach the far end without being fragmented. On
•
most networks this can be set to 1500. It cannot be set below 576. Any packet that would be too big
once encapsulated is broken up first and sent in shorter tunnel packets. This is obviously less
efficient.
The Limit option will drop/reject any packets that are to big to send within the MTU when
•
encapsulated. An ICMP can't fragment error is returned
The Fix option causes the MSS in any TCP SYN packets to be adjusted if too high so that it will fit the
•
MTU specified when encapsulated. This makes the tunnel more efficient. You should set this at both
ends as it only affects MSS settings on SYN packets sent in to the tunnel.
The local end IP can be set. This is rarely necessary, but in some cases it can be useful as it is
•
checked at the far end to match the far end IP.
If all tunnels in a set are inactive then the traffic goes to the originally routed tunnel only (i.e. as if
•
there was not tunnel set), if it is enabled by profiles.
With bonded tunnels, sessions reported in the session table relate to the tunnel the traffic was routed
•
to, the redirect to another tunnel is done at the last stage when the traffic is sent down the tunnel and
does not affect session tracking.
QOS and Reorder relate to packet reordering on bonded tunnel sets, see below•
The bonding bias can be used to adjust the relative load of each tunnel in a set, e.g. 1, 1/2. 1/3, 1/4,
•
etc. This is intended for mixed speed bonded sets, and its usefulness is somewhat experimental.
A tunnel is treated as down if no packets of any sort for 5 seconds, or no keep alives for 12 seconds.•
Tunnel bonding
FireBrick 105 Manuals
With the bonding feature it is possible to select a set of tunnels which work together. When traffic is sent to
any tunnel in a set, it is actually sent down one of the tunnels to share out the load. This means you can make
use of multiple internet links connecting two FireBricks and send traffic down multiple links at once for a higher
overall throughput.
Note that you should set MTU, Fix, and other settings the same for all of the tunnels in a set to avoid any
unexpected behaviour.
If any of the tunnels are disabled (based on profile) or not active (expect keep−alives is set but none received)
then it is omitted from the set and the traffic spread between the working tunnels in the set.
When bonding channels to achieve high speeds you must also consider the impact of windows size and
speed/latency. Your TCP settings may need tuning to make the best use of a fast link to the internet.
Packet reordering
It is a fundamental principle of Internet Protocol (IP) that there is no guarantee packets will all arrive, arrive in
order nor be duplicated. The higher protocols must handle this. For example, TCP is able to retransmit
dropped packets and ignore duplicate packets. Unfortunately, not all protocols and applications work well
when packets are reordered. Two key examples are that (a) some TCP stacks are much less efficient in the
face of packet reordering so giving lower than expected throughput, and (b) some voice over IP systems do
not handle packet reordering well resulting in distorted speech on a call.
Packet reordering in a FireBrick can happen as a result of the bonding features. These are typically used to
send packets down multiple internet links. The difference in packet sizes alone can therefore result in packets
arriving in a different order. Differences in the latency on each link can also have an impact.
To address this the FireBrick has two features.
The first (now deprecated) is the QOS option. This affects the sending of traffic down a bonded set.
•
Any traffic that matches the programmed TOS value in the FireBrick will not be bonded but will stick to
the tunnel to which it was routed, load balancing other traffic around it. This is normally used to
address VoIP issues by making calls stick to one or other link. Typically a load sharing routing rule set
is used to send traffic to one of the links in a bonded set so some calls go down one link and some
down another, etc. If traffic is sent to a link that is unusable (down by profile or keep alive) then the
bonding is enabled again for that traffic until the link is usable.
Tunnels32
FireBrick 105 Manuals
The second option is Reorder. This affects the receiving of packets on a bonded set. Packets arriving
•
out of order are held until the missing packets are received (within limits). This can be less efficient if
there are dropped packets, and so it is recommended that speed lanes be used to minimise any risk
of dropped traffic between bricks. The result is that most, if not all, of the received packets come out
of the FireBrick in the correct order. When this is used effecively, the QOS option becomes redundant
and so is deprecated. Note that this will not work if the far end is a FireBrick which does not have the
Reorder option available (i.e. older software).
Note that reordering is only available with both bonding and traffic shaping. Its use without shaping traffic to
avoid inter−brick packet loss is not recommended as the far end will wait several packets before confirming a
missed packet is in fact missed, hence hindering performance.
FireBrick Lightweight Tunnelling Protocol
The tunnelling protocol uses UDP port 1 packets, with one of two packet formats (single and multi−segment).
In each format the first byte in the UDP payload is of the form SFPPVVV where S indicates the packet is
signed, F indicates the last segment, PP indicates the part (0, 1 or 2) and VVVV is the version (2). The second
byte is a tunnel reference − which tunnel at the far end to use, and starts from 1.
For signed packets, a 16 byte MD5 signature is at the end of the packet. This is a signature of the whole UDP
payload up to this signature, followed by the secret. The signature covers the UDP payload only so does not
include IP or port numbers as they could change in transit via NAT, etc.
For packets that will fit in the sending MTU, the packet is sent in one go. In this case the tunnel reference is
followed by the data in the packet, and then 30 bytes (before any MD5 signature) of header data. To
reassemble the packet, simply move 30 bytes from the end to the start of the packet. This is a light weight
tunnelling system which does not involve moving much data in the packet (only 30 bytes). These packets
have F=1 (final) and PP=0 (first part).
For packets that will not fit, then the next two bytes after the tunnel reference are a cycling packet reference.
Then there are up to 512 bytes of data. The packet may be in 2 parts (F=0/PP=0 and F=1/PP=1) or 3 parts
(F=0/PP=0, F=0/PP=1, and F=1/PP=2) all with the same packet reference. All but the final packet are exactly
512 bytes. This is not as efficient because data has to be moved in the packet, and the 2 or 3 parts have to be
reassembled. All segments in a packet are expected to arrive within 2 seconds.
For keep alive packets, F=0/PP=3 and one byte follows the tunnel reference with flags 000TRSU1. U mean
the tunnel is up (i.e. sending end is seeing incoming keep alives). S means the sending end expects to
continuously send keep alives (i.e. master or auto when far end is fixed IP). T means the sending end will
send unsigned payload packets. R means the sending end can accept unsigned payload packets.
The IP header ID field should be contiguously increasing in the low byte on all packets sent to the same
tunnel set so as to ensure the Reorder option works correctly.
Debug level logging on the FireBrick will report if there are any unexpected tunnel packets received, etc.
Tunnels33
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Quick setup
When you connect to the FireBrick admin pages, or click on the dragon, you will access the quick setup page.
If you are not logged in then this may show no information as you may have no access to any filters or
profiles.
The quick setup page contains a number of check boxes, which can be changed and updated with the update
quick settings button.
Profiles
Any profiles which are set to manual mode are shown on the quick setup. The check box, if ticked, sets the
profile to Manually enabled, otherwise the profile is set to Manually disabled.
Filters
Any filter with quick setup selected is show. If ticked then the filter is enabled, otherwise the filter is
suspended.
Technical Reference
Note that a suspended filter is not considered. This is not the same as a drop filter as that would stop
•
checking of any later filters and drop teh traffic. A suspended filter means that later filters are
considered. As such a filter may be unticked on the quick setup pages, but traffic of the type specified
may be allowed (by another filter).
The profiles and filters listed are only those that the logged in user can access.•
This screen also shows an startup tips, such as setting an admin password, or logging in.•
Quick setup34
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
FireBrick SoHo and Plus
This page lists the key differences between the FireBrick SoHo/Plus models and the newer FireBrick 105.
Configuration files from the SoHo or Plus models can be loaded into the FireBrick 105.
Key differences:−
The 105 is fasters and has more capacity•
All ports are auto 10/100 with auto crossover and built in cable tester•
Many features have general enhancements and improvements•
IP groups and port groups added•
The SoHo used to include one tunnel and bonding features which are now optional extras•
Improved web configuration pages and tool tips•
There are prompts to suggest basic initial configuration steps, simplifying initial setup for new users•
Technical Reference
General differences:−
The 105 is significantly faster than the SoHo/Plus models allowing throughputs in excess of 10Mb/s•
The 105 has more capacity − allowing more sessions and DHCP addresses, etc.•
The 4 port switch on the 105 is a high speed network switch capable of 100Mb/s full duplex on all
•
ports. On the SoHo/Plus this was a 10Mb/s hub
All ports are auto 10/100 with autocrossover•
All ports have a built in cable tester•
There is no rear serial connector on the 105, which was only for factory use on the SoHo/Plus•
The bar graph mode for the LEDs is no longer available on the 105•
The MAC list on the 105 provides information on which port each MAC has been seen•
There are additional features available and upgrading can be done on line•
The 105 now has IP groups•
The 105 now has Port/Protocol groups•
There are more detailed per port counters which apply to each port, not just WAN and LAN•
Traffic routes can now be based on port/protocol as well as IP•
The 105 allows routing to individual subnets•
The 105 allows multiple DHCP clients on the same interface by use of per subnet MAC addressing•
The web configuration pages include tool tips•
Context based prompts suggest the initial setting admin password, logging in, clearing nobody rights,
•
setting up IP and checking features
SoHo
The key differences bettween the SoHo and the FireBrick 105 with no optional features installed are:−
The SoHo included a single FireBrick tunnel. To use tunnels on the 105 you will need to purchase the
•
tunnel feature.
The SoHo included multiple gateway bonding and weighted routes. These are now only part of the
•
optional bonding feature on the 105. The limited subnets on the SoHo made these features of limited
use anyway
The 105 has all of the general additional features listed above•
FireBrick SoHo and Plus35
FireBrick 105 Manuals
Plus
The Plus is roughly equivilant to the 105 with Extras, Profiles, Shaping, Tunnels, Reporting and Bonding with
the following key differences:−
There are more profiles, routes, tunnels, address mapping rules, and speed lanes•
SNMP now provides details of all 5 ports distinctly•
The 105 has all of the general additional features listed above•
FireBrick SoHo and Plus36
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Ethernet Networking
This is a guide to basic networking, covering cables, hubs, switches, routers, IP, DNS, netmasks, firewalls and
gateways. It is meant as a basic guide and does not cover every aspect in great detail − just enough to get
you started when setting up a network for the first time − especially if you have something like an ADSL
router.
Cables and wires
A network can connect using cables, coax, fibre, or radio, but we will concentrate on cables.
Generally, the way a network operates once connected is the same whatever method you use.
The speed may change, but it is still effectively an ethernet network we are talking about.
The cables you will have heard of are "cat 5" or "category 5" or "cat 5e". Cat 5 is basically a
system of structure cabling, and a cat5 lead or patch lead is just part of that. A patch lead is just a
lead with a plug each end that connects things together. Cat5 is a specification for teh cables and
installation, and Cat5e is an enhanced version of that spec. Cat5 cables run up to 100m maximum to be within
spec.
The cable itself has 8 wires arranged as 4 pairs. The fact that they are pairs is important to the way the
electrical signals are carried. Each pair has a colour: blue, orange, green and brown. Each pair is two wires
twisted together (see picture on right). One is coloured (maybe with a thin white stripes) and the other is
normally white with thin coloured stripes.
The colours themselves don't matter to the electrical signals but the fact that they are pairs does. There are
conventions which you should follow. It is important that the pairs are not split or rearranged.
If you look at the plugs on the end of the cable, with the lead back towardes you, they are 8 way, usually clear
plastic and you can see the wires in the plug. The colours normally used, are as follows, with pin 1 on the
left:−
For normal 10/100 networking only the Orange and Green pairs are used. One pair is transmit and one is
receive. Normally a cable is straight, i.e. the same wiring at each end − pin 1 to pin 1, pin 2 to pin 2, etc.
There are two types of sockets − the ones you find on a computer (MDI) and the ones you find on a hub
(MDIX). The two types of sockets are wired differently so that a straight cable can be used to connect
between them correctly. This means that at one end pins 1 and 2 are transmit and at the other end they are
Ethernet Networking37
FireBrick 105 Manuals
receive, so it works.
In some cases you need to connect a computer port to a computer port or a hub to a hub. Some hubs have an
alternative or switched port to allow hub to hub connections with a straight lead, but if this is not the case, or it
is already in use, you need a crossover lead. A crossover lead has transmit connected to receive. i.e. 1 to 3, 2
to 6, 3 to 1, and 6 to 2. You can tell a crossover lead as the colours of the cables are different at each end,
e.g. one end normally starts White then Green rather than White then Orange as normal.
The FireBrick 105 has auto−crossover ports so you can use either straight or crossover cables to connect to a
hub or computer without having to worry which is which. When two auto crossover ports are connected then
they work out between them which will be MDI and which will be MDIX.
Cables give us a way to connect two devices together.
Hubs and switches
Having a network connection on a PC is all very well, and with a crossover cable you can connect directly to
another PC, and they can communicate. However, you normally want to connect several PCs, or other
network devices, together in to a group (a network). To do this you need hubs and/or switches.
Hubs
I hub is a device that connects several network connections together. Typically available in 4, 5, 8, 16, 24, 32
ports they work by allowing data sent from one connection to go out to all of the others. You can connect hubs
together, but as a general rule you should not have more than 4 hubs from any one machine to any other as
the accuracy and delay of the signals cannot be guaranteed and the network might not work properly. Hubs
are very simple to use as you just plug a patch lead between a port on the hub and the PC. Hubs have the
limitation that only one device can talk at once, and so as the network gets larger the capacity is reduced.
Thankfully, hubs are less and less common these days.
Uplink
Some hubs have a switch by one of the ports, or an alternative port (e.g. 8X next to 8). This is an uplink port.
On the X port the wiring is crossed over so that the port works like a PC connection and a straight lead can be
used to another hub. It is important that if the port is an alternative rather than having a switch that you use
one or the other socket and not both.
If you try and connect two uplink ports together, that would need a crossover lead as both ends are crossed
over in that case. You can use a crossover lead to connect two of the normal ports one two hubs together.
Link light
Hubs, and must PCs, have a link light. This helps you make sure you have the cable right. If you do, then both
ends with light up the link light. If the cable is faulty it is possible for only one end to light up and it wont work.
If you have the wrong sort of cable (crossover / straight) then neither end link light will be lit.
10/100/1000
Different speeds of networking are available. The most basic is 10Mb/s (10,000,000 bits per second), and is
called 10baseT. Faster networks operate at 100Mb/s, and even 1Gb/s. It is possible to get 100Mb/s only
hubs, but normally anything that handles 100Mb/s will also handle 10Mb/s and is also a switch rather than a
hub. Usually the switch/hub will automatically work out if the connection is 10Mb/s or 100Mb/s and usually has
a light to tell you. The FireBrick 105 works out if a port is 10Mb/s or 100Mb/s automatically, although you can
set it manually if necessary.
Ethernet Networking38
FireBrick 105 Manuals
Switches
A switch looks much like a hub, and may initially seem to do exactly the same job. A switch has a number of
sockets to connect network devices such as PCs, and allows the devices to send data to each other. The big
difference between a switch and a hub is performance. The way ethernet is designed to work is any packet of
information sent on the network is actually seen by all of the other machines. This means they cannot actually
all talk at the same time. With a hub, this is how it works − if one device is sending data, all of the others are
receiving that data (and can't be sending data themselves). This means on a 10Mb/s hub, all of the devices
share the network capacity (the 10Mb/s).
A switch on the other hand operates by receiving the message and sending it out on the right ports. This
means that if A is sending data to B, then C can be sending data to D at exactly the same time. It means the
speed is not shared between all of the devices. The switch uses MAC addresses (see below) to work out
which ports to send data to, and keeps track of what machines you have plugged in where.
As a switch can receive and send data independently on each port, it allows 10/100 switching. I.e. a mixture of
10Mb/s and 100Mb/s devices. It can receive at 10Mb/s on one port, and at the end of the data being received,
send it at 100Mb/s on other ports, and the other way around. Obviously a switch has some memory internally
to hold these messages.
The LAN port on a FireBrick 105 is a full 10/100 network switch allowing high speed switching of data
between the ports.
Full duplex
It is possible on 100Mb/s to operate in full duplex mode. This means you can send and receive data at the
same time on a port. This again adds performance, but it only works where the PC can handle full duplex. The
switch will normally work this out, and some have a light to say if a port is full duplex or not. If one end is full
duplex and the other is not (e.g. the switch or PC got it wrong) then you will lose packets and have an
unreliable link. The FireBrick 105 works out the duplex automatically, but it can be set manually if necessary.
Auto crossover
Most modern switches have auto crossover, so that you can connect directly to a PC or another switch or hub
with either a straight or crossover cable. The FireBrick 105 has auto crossover, but it can be set manually if
necessary.
Managed switches
A managed switch simply means that the ports can be set up manually, and normally that data on the traffic
being carried can be viewed (how busy each port is). This means you could fix a port at 100Mb/s or full
duplex, or whatever instead of trusting the automatic negotiation (which is not always foolproof). The FireBrick
105 is a managed switch.
With hubs and switches, we now have a way of physically connecting several devices, such as a PC,
together.
LAN/Ethernet
Having covered some of the basics of how computers and network devices physically connect to each other
using cabling and hubs/switches, we need to look at what they say to each other and how a network is
created. Ethernet has been around a long time, and evolved to allow different types of physical connection.
Originally it used thick yellow expensive coax cable, but can now operate over Cat5 cables and even radio
network as well. The network is called a LAN (Local Area Network) as it is a network of machines that are
normally physically close to each other (local area) allowing direct communications between those machines.
Ethernet Networking39
FireBrick 105 Manuals
Packets
The internet, and ethernet work on packets. These are small chunks of data (up to 1.5K) that contain
information about where they are to go, and where they are from, and some data. All communications on a
network or the internet is broken down in to small packets like this.
Wrapping
Breaking down information in to small chunks, packets, is only part of the story. These packets are then sent
in various ways, and ethernet packets are just a wrapping around another type of packets (normally an IP
packet). So the ethernet packet contains information about where the packet is from and to on the LAN, and
also some check data to ensure it is not corrupted in any way.
MAC Addressing
As mentioned above, the basic principle of ethernet is a broadcast medium − i.e. when one device sends a
packet, all of the rest see it. In practice you are normally sending a packet from A to B, i.e. it is destined for
only one other device on the LAN. To achieve this the destination address is included in the start of the
packet, and all of the devices seeing the packet look at that address to see if it is for them. If it is not they
ignore it, and if it is then they accept it and process it. A switch uses this to work out which port each MAC
address is on and so where to send packets rather than sending to all ports at once.
The address is a MAC address (Media Access Control). Every network device as a unique MAC address fixed
by the manufacturer of the network card. MAC addresses are only used on the local network (LAN) to allow
packets to be sent from one device to another.
A MAC address is actually a 48 bit number, and is usually written using hexadecimal, e.g. 00:03:79:12:33:57.
You don't normally have to deal with MAC addresses.
Now we have a way of connecting several devices, such as PC, physically together in a local network and a
way that allows them to send specifically addresses packets of data to each other.
IP
IP (Internet Protocol) is the basis of the whole of the internet. It allows packets of information to be sent over a
wide area network (WAN), i.e. anywhere in the world.
IP addresses
Unlike MAC addresses which are automatically allocated by the manufacturer of a network card, and which
are used for addressing machines on a local network, IP addresses are allocated in a structure which allows
packets to them to find their way from the other side of the world if necessary.
An IP address is a 32 bit number, and is normally written as a dotted quad, e.g. 192.168.0.1. This means that
the 32 bit number is broken in to 4 parts, each of 8 bits, and each part is written in decimal (a number from 0
to 255) with dots in between. The address 192.168.0.1 is 11000000101010000000000000000001.
IP is a means to send packets to a specific IP address. Again, like ethernet, the IP packet wraps up the data it
contains, and adds addressing information and checking information to make an IP packet.
Private / public addresses
You may have seen addresses starting 192.168, or 10, or even 172.16 in many places. This is because they
are private addresses. They are just like any other IP addresses, except they will never be allocated to
anyone, and so can safely be used in private networks. The actual ranges are 192.168.x.x, 10.x.x.x, and
172.16−31.x.x.
Ethernet Networking40
FireBrick 105 Manuals
If you are setting up a private network, and need some IP addresses, you should always use these ranges. If
you just make up addresses (e.g. 100.100.100.x) then they could be allocated to a real place on the internet −
perhaps a customers mail server, or your favourite web site, and that part of the internet would not be
accessible to you as you would have hi−jacked their addresses for your private use.
Special addresses
There are special addresses. 255.255.255.255 is a special address used to send packets to every device on a
local network (not to the whole internet!). Addresses starting 224−239 are multicast addresses used for some
special applications to send data to more than one machine at a time. The address 127.0.0.1 is special in that
it is another address for yourself, i.e. on any machine this is a way to talk to itself. Address 0.0.0.0 is not valid
but is used like 127.0.0.1 on many machines. Addresses 1.x.x.x to 223.x.x.x are otherwise public internet
addresses.
Where addresses come from
If you need to accept data from the internet (even if it is just the data in a web page you have requested) you
need a public internet address. With a modem this is typically allocated on the fly when you connect to the
internet from your PC. With a leased line or ADSL connection these may be permanently allocated to you.
The actual addresses are allocated by regional internet registries (RIRs), of which there are only 4 such
registries. There is one for the whole of Europe, called RIPE. RIPE allocates large blocks of several thousand
addresses at a time to local internet registries (LIRs) which are typically internet providers. The whole world
has to know where these addresses are to go to, so allocating large blocks to ISPs allows this to be done
without too much difficulty.
The ISP will then assign addresses in small blocks to you. The ISP makes sure that any packets that are sent
for your addresses get to you, via your ADSL or leased line, or whatever.
ARP
If you have several PCs on a local network, and they each have their own IP address, then they may want to
send messages (IP packets) to each other. They do this by sending a packet to a specific address. E.g.
192.168.1.2 wants to send a packet to 192.168.1.3. The IP packet is created with these addresses, but to
send on the local network this has to be put in to an ethernet packet. The ethernet packet needs to say which
MAC address to send the packet to.
In order to find the MAC address for an IP address on the local network, a special packet called an ARP
request (Address Resolution Protocol) is sent. This is a broadcast packet to all of the machines on the local
network asking, e.g. "where is 192.168.1.3". The machine with that address answers and tells it's MAC
address. This is remembered for a while to avoid sending loads of these broadcast messages, and any
packets for that IP address can now be correctly addressed to the right MAC address.
Creating a subnet, and subnet masks
We have said that IP addresses have a structure. Large blocks allocated to an ISP, and an ISP then routes a
smaller block to a customer. But how do you group IP addresses in to a "block"?
The answer is that a sequential set of IP addresses are treated as a block of addresses. However, it is not as
simple as saying that a certain customer has 1.2.3.5 to 1.2.3.17 as their addresses (that would be too simple
<−:). In practice a subnet is created. A subnet is a group of addresses based on the binary IP address.
What happens is that part of the 32 bit address is assigned to a network. e.g. if we have machines all starting
192.168.5. in a network (that's 192.168.5.0 to 192.168.5.255) then that is a 24 bit subnet. This is because the
first 24 bits, the 192.168.5 part are the same for all machines on that network.
Looking at it in binary that network is 11000000101010000000010100000000 to
11000000101010000000010111111111, i.e. the first 24 bits (110000001010100000000101) are the same,
and the last 8 bits changed (from 00000000 to 11111111). To define this a subnet mask is used. This says
Ethernet Networking41
FireBrick 105 Manuals
which bits are the same, e.g. 11111111111111111111111100000000 which is 255.255.255.0.
All machines in a network have their own unique IP address within the same block, and they also know their
subnet mask. This is important so that machines know if another address is on the same network. If it is, then
packets to another address can be sent directly and ARP used to find the MAC address to send them to. If not
on the same network, then the packet will have to be sent elsewhere (see below).
When the address block is 256 addresses, then it easy. e.g. 192.168.5.x. However, you will often have
smaller blocks allocated (as IP addresses need to be carefully allocated so they don't run out). This means
you could have, say, a 28 bit netmask (which is 255.255.255.240) allowing you only 16 addresses.
Special addresses (again)
In any subnet, the first and last address are special. The first is effectively unused, but the last is a broadcast
address which all devices listen for in addition to their own address. Broadcast addresses like this stay on the
same local network and are used for machines to tell other machines about them (windows network
neighbourhood uses this, for example). This means if you have a block of, say, 16 addresses, you can only
use 14 of them anyway. Note that the FireBrick 105 treats the first (network)address like a normal address,
but most other equipment does not.
DHCP
When setting up a network, each machine has to have several parameters set. We know the IP must be set
uniquely for each machine but must be within the same group (subnet) of addresses. The same subnet mask
must also be set on every machine, and we will see below that a gateway and DNS server are normally
needed as well.
DHCP (Dynamic Host Configuration Protocol) is a way for one machine on a local network to take on the job
of giving out addresses to other machines. If you set up a DHCP server, you tell it a range of addresses to
give out, and the details of subnet masks, gateway, DNS, and several other settings. Once a machine is then
plugged in to the network, having been set to get details automatically then it will be allocated the necessary
details from the DHCP server. This can save a lot of time and effort.
The FireBrick 105 can be a DHCP server and allocate addresses to machines on your network automatically.
Getting off the network
So far we have seen how we can physically connect machines on a network; how they can send messages to
each other by MAC address; how they can have IP addresses from a small group (subnet) and how (using
ARP) they can send messages to each other by IP address.
By having a subnet mask, it is possible for a machine to work out that a packet is intended for a machine
outside its own network. e.g. if the network is 192.168.5.0−255, a machine sending to 217.169.0.1 knows it is
not on the same network − so what does it do.
Considering a PC with only its network connection, it has to send the IP packet in an ethernet packet, and so
has to put a MAC address in that packet to say where it is going. It knows the destination is not on the same
network, so it knows there is no point sending an ARP to find the MAC address. Instead it sends an ARP to
find a gateway machine. That is a machine that knows what to do with this packet. This means that each
machine needs a gateway address − the IP address of a machine on the local network which talks to the rest
of the world.
Sending the packet to that machine (still addressed at the IP level to the original IP address), means that it
can then be sent on its way via modem, ISDN, leased line, ADSL or whatever.
Routing
There is more to life that just getting the packet off the network. There are sometimes situations where you
need to send some packets one way and some another. This is where routing tables come in. A routing table
Ethernet Networking42
FireBrick 105 Manuals
says which blocks of IP addresses go via what gateway or route. You can set these on windows PCs (from
DOS), but usually you will have one machine on your network that is a router, and it will have routing rules to
say what goes down (say) the ADSL, what goes via another box (perhaps an ISDN router) and so on. The
PCs on the network can then live with just a gateway address and the gateway bounces the traffic to the right
place.
The FireBrick 105 can act as a router directing traffic to other gateways as necessary.
In the internet there are lots of routes that say which blocks of IP addresses go where and this is how the IP
addresses for you network get to come down the right line to your router.
More detail on routing within the FireBrick is here.
With IP addresses we have a way to send packets of data to any IP address on the planet.
DNS
So far we have seen how a network of networks (an internet) can be set up. Each local area network has a
small group of IP addresses (a subnet) and some gateways or routers carrying traffic off its network to the rest
of the world. The Internet is a collection of networks and links owned by ISPs and companies.
This is all very well if I want to send a packet to 217.169.0.1, It will get there. What if I want to go to a web
site? That has a name not a number. What if I want to send an email − that uses a name not a number..
To solve this DNS (Domain Name Service) is used. This allows names to be turned in to numbers. Normally
every PC will list one or two DNS servers (which have to be listed by IP address and not name or else you get
a bit of a chicken and egg problem). The only reason for two is resilience. These are servers, usually provided
by your ISP, which will look up names for you and get the addresses.
So, when you put www.me.uk in to a web browser, the browser uses DNS to look up that as 217.169.20.29
and then fetch the page.
The FireBrick 105 can act as a DNS relay. This means you can use it as a DNS server, and it will send your
requests on to the DNS server it has been configured to use.
With DNS we can call machines by names, and so we can go to web sites, send email, and communicate with
the world
If you want to know more about IP networking, ack your supplier about IP training courses.
Ethernet Networking43
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
FireBrick routing, mapping and filtering
This is a general description of the way in which the FireBrick establishes and routes a new session.
What is a session?
The FireBrick tracks sessions. These are a set of packets in each direction that belong together. The initial
packet will start the session and then there are replies and further packets in the same session.
In the case of TCP, there is a specific sequence of packets to establish, maintain and drop a session. The
FireBrick tracks this from the initial SYN packets through to the final FIN packets.
In the case of UDP, the FireBrick tracks corresponding replies back to the same port and IP from the same
port and IP as the initial packet, and uses timeouts to end the session.
In the case of ICMP, replies are tracked, like echo replie to echo requests, and also ICMP errors are tracked
as part of the initial session to which they relate.
In the case of other protocols, the session is tracked based soley on the source and target IP addresses,
which places some restrictions on using NAT with protocols like GRE.
The FireBrick will route the initial packet in a session based on routing rules, and will apply filters and mapping
rules. The replies undo any mapping or NAT and are routed back. The first reply packet is routed within some
constraints so that it will head for the same interface as the original packet, for example.
What order are things done?
The order things are done is as follows − this is also the same order in which the routing, filtering and
mapping icons are shown above.
Routing rules are applied. This defines the interface to which the packet is to be sent − which is
1.
necessary to for filtering and mapping
Filtering is done. This is done before mapping as mapping will potentially lose some information (i.e.
2.
many ports could be mapped to one, etc)
Mapping is done, potentially changing the IPs and ports3.
If mapping was done, then this may mean routing is re−applied4.
Routing rules
Routing is the process or working out which interface, sub interface (e.g. subnet or tunnel) and gateway (for
ethernet interfaces). For tunnels the traffic goes to the specified tunnel, and there is no need for a gateway.
For routes to ethernet interfaces (e.g. LAN/WAN) there needs to be a gateway address for any traffic to an
address off subnet.
Routing is done by looking through the routing rules in order and trying to match the traffic to the routing rule.
This can mean checking ports and protocols even. At the point that subnets are routed, the subnets are
checked in order for an address on one of the subnets. Then the routing rules resume. Ultimately if there is no
match, the default routing rule is applied.
In some cases there is already some routing information. This applies when routing the initial reply of a
session, but also when traffic like pings, tunnels, etc, have some inforation specified such as an interface.
Where an interface is know, the routing and subnet rules are only considered if they route to that interface.
FireBrick routing, mapping and filtering44
FireBrick 105 Manuals
Routing can mean sending traffic to a specific interface. It can further mean specifying a specific subnet. It can
also mean specifying a specific gateway for an ethernet interface.
The normal recommendation is to route traffic that is for the ethernet to a specified subnet, and not specify a
gateway. If the routing comes outs as being a subnet and no gateway, then the routing could be to an IP on
that subnet − in which case ARP is used. If not, then the gateway sepcified in the subnet config (under DHCP
server) is used. Failing an ARP is done for the off−subnet target IP address. ARPs are done from the
FireBricks IP/MAC on that subnet.
Routing to a subnet and not specifying a gateway but allowing the subnet specific gateway to be used helps
avoid duplication. This is very useful when the external subnets are allocated by DHCP and so the gateway
can be changed. This is particularly useful when multiple subnets are used for multiple external interfaces and
tunnels are set to go to specific subnets with DHCP gateways.
If routing is to an ethernet interface with no gateway or subnet then the FireBrick will ARP for the off−subnet
address. It may use its stealth address as the source for the ARP and the base MAC address. This is not
ideal, and a gateway or subnet should be specified.
If routing to an ethernet interface with a gateway but no subnet specified, then the subnets are checked for the
first subnet containing the gateway address, and this is used.
NAT
NAT simply means that the source IP is changed to that of the FireBrick. The FireBricks IP will depend on
wheich subnet it is sending traffic to. If to a tunnel, then the tunnel can set the NAT IP to be used, else the
NAT is applied when leaving the far end brick via an ethernet interface. This means the source IP is set at the
last stage, after mapping, and so filtering on the source IP is not possible.
NAT is applied if the routing rule is to the default gateway or matched a subnet, and the source subnet has
NAT selected. Failing that NAT is applied if the explicit routing rule used has NAT set. This means that any
explicit routing rule that is used without NAT ticked will not use NAT even if the source is a subnet that has
NAT ticked. Sometimes this means different explicit routing rules for traffic from some addresses than others
even if the destication is the same, as one set may need NAT and one set may not.
Filtering rules
Filering rules simply match the assigned source and target interface (from the routing rules), IPs, ports, etc,
and decide if the session is allowed. If allowed, all replies are allowed and further traffic within the session.
Mapping rules
Mapping rules are then applied, and again work on similar critera to filtering. They then change the target
interface, source and/or target IPs and/or ports. If changing the source IP then a new source port is assigned.
Setting the new source IP of 255.255.255.255 has special meaning and makes the FireBrick apply NAT.
Key points
We recommend that all subnets are set up with IP and mask, but also with a gateway applicable for
•
that subnet. This allows routing to the subnet without having to specify the gateway address again in
the routing rules.
Any explicit rules used for routing must consider NAT as it will not be automatically applied unlike
•
routes to subnets or the default gateways
The order routing, filtering and mapping are applied are the same as the icons on the top of the
•
config, routing −> filtering −> mapping.
FireBrick routing, mapping and filtering45
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Bonding
The FireBrick 105 has an optional bonding feature which allows both load sharing (typically to share downlink
on multiple internet feeds) and multiple gateway operation (typically to share uplink on multiple internet feeds).
Uplink bonding
Uplink bonding means making use of multiple internet routes to provide a true aggregate uplink. This applies
even to a single session or file transfer as the bonding is done on a per packet basis.
To provide a mechanism for sending packets to multiple routers the FireBrick uses a pseudo router address.
This is a normal IP address that could be on the same interface as your routers. Whenever the FireBrick uses
this as the gateway for traffic, it will follow all of the normal rules for any gateway address and determining
which interface to send traffic.
At the last moment when it would get the MAC address for this gateway (checking the ARP cache or sending
an ARP), it sustitutes one of the real gateway addresses. It then uses the corresponding MAC address for the
real gateway and sends the packet. The packet still goes on the interface it has decided based on the pseudo
gateway address defined in the routing.
The FireBrick can be configured with one or two pseudo gateway addresses, and up to six real router
addresses. When it tries to send traffic to either gateway address it will in fact send to one of the real
addresses to share out the load.
The real addresses can be specified as an IP address, or by reference to a subnet which has a gateway
address defined. Using a gateway on a subnet avoids dublication and also use with DHCP subnets.
The reason there are two pseudo addresses is that you may want to use NAT with separate external
addresses. When you route NAT traffic to a gateway the gateway address is used to work out which subnet
applies and hence which of the FireBricks own IP addresses to use for NAT. Having two pseudo addresses
allows for NAT via two different subnets and hence two different source addresses whilst still sending traffic
via multiple actual gateways.
Without NAT, it is normal to have a separate block of addresses on the LAN routed via one or both of the
external internet connections. It is sensible for any FireBrick originated traffic (time setting, emails, etc) to be
sent using an address in this separate routed block. As such it is normal to have this subnet on the LAN and
the WAN. The LAN first allowing use of the addresses for PCs, and the WAN so that the FireBrick has an
address it can use when talking to the WAN. Then, one of the routed block of addresses is used as a pseudo
gateway address.
The pseudo address could be any address which the FireBrick can route to the interface, but is ideally one of
the addresses on a WAN subnet to allow the FireBrick to use a sensible address itself. However, this would
waste one otherwise usable address purely for internal operation. This is particularly annoying if the external
subnets are /30s which would not leave space for a third address for this purpose. For this reason it is
recommended that the otherwise unusuable network address (first address in the subnet) is used as the
pseudo gateway. The FireBrick will treat a network address as a host and so allow it to be a valid gateway
address. Remeber, this pseudo address is purely internal and not actually used outside, so the router does
not have to be configured specially.
Note: Some routers seem to take offence to an ARP being sent for their IP apparently from an IP not on their
subnet. This can be avoided by using the subnet with gateway to set the real address as the ARP is from the
subnet address. It can also be avoided by making the routers think they are all part of the same larger subnet
even if they are in fact using adjacent /30 blocks.
Bonding46
FireBrick 105 Manuals
Different speed uplinks
There is no allowance for different speeds of uplink, but this can be accomodated to some extent. e.g. if
uplinks of 250K and 500K are available, list the 500K gateway twice and the 250K gateway once, and this will
cause the traffic to be sent in the right proportions. Mixed speed links may not give the performance you
expect though as there will be mre packet reordering.
Packet reordering
IP does not guarantee packet order (or packet route, reliable delivery or non duplication of packets). It is the
stack, e.g. TCP, which ensures correct order and integrity of streams of data. As such TCP has to cope with
dropped, repeated and reordered packets. Sending packets via two paths could result in packet re−ordering if
the latency on the two paths is different.
Unfortunately, some TCP stacks are less efficient when there is packet re−ordering and so it is not always
possible to achieve the full speed of the two links combined. In practice we find that this is generally not an
issue and bodning uplink works well.
Packet reordering has also been seen to have some detrimental impact on voice over IP allocations, although
they should be able to cope within the jitter delay. It also has impact on some RFC2833 handling where it can
appear to indicate new DTMF digits as a result of duration going backwards. As such you may want to force
VoIP traffic via one router or use load sharing to send individual call consistently via one route.
More than 6 gateways
In theory you could cascade multiple FireBricks to allow more than 6 final gateways to be used. If you need
more than 6 links, tunnel bonding may be more appropriate. However, more links will probably start to make
packet reordering a major factor.
Fallback
With the profiles feature, bonded uplink can have a profile set for each gateway allowing a graceful fallback to
fewer gateways.
Downlink load sharing
If using downlink load sharing (see below), you typically NAT sessions to be from one of two separate
FireBrick addresses via two internet connections. If uplink bonding is also required then you can use two
pseudo gateways − one for each of the subnets for each NAT session, and list both as pseudo gateways. This
means the uplink bonding applies to the traffic regardless of which IP it is NATed via. Again, profiles allow
fallback to only use the correct real gateway instead of a pseudo gateway in the event of one link failing.
Downlink bonding
Obviously an ISP could offer a service of downlink bonding, either using a FireBrick at their end of multiple
links or some similar device. This has no impact on the FireBrick as it simple receives the packets.
Downlink load sharing
The FireBrick can be very useful in a large office to allow use of aggregate downlink capacity on multiple
internet feeds. This is applied on a per session basis, so the capacity on any one session will be limited to the
feed it uses, but the overal capacity for all sessions can reach that of all feeds combined.
Probability based routing
The typical usage is with two internet feeds, each with a small block of IPs so that the FireBrick has a real IP.
The LAN then uses private IPs. The FireBrick NATs traffic to the internet.
Bonding47
FireBrick 105 Manuals
To achieve the load sharing, the routing rules are used instead of a default gateway. Two rules are defined
setting the gateway to each of teh external routers with a 50% loading. This means that each session may use
one or the other route. NAT is selected on the route, and the IP used will depend on the FireBricks IP for the
subnet associated with the gateway selected. The reply traffic will then arrive for that IP via that gateway, and
so half the sessions will have data arriving via one route and half via another.
Fallback
It is recommended that the profiles feature is used to monitor gateways and take out the routes used for any
that are not working. This can distort the load sharing on the remaining routes when there are more than 2
gateways remaining, although suitable use of 50% routes as 33% routes, and then default routes can allow for
this if configured carefully.
Tunnel bonding
The FireBrick can be used to establish tunnels to other FireBricks (tunnel feature). With the bonding feature
as well, the tunnels can be linked in to a set allowing multiple tunnels to be used as one. Normally this would
be configured so that each tunnel is sent via a different physical link.
Balancing different speeds
The tunnels in a set are equally weighted for traffic sent down them. If you have a mixture of physical links you
can make multiple tunnels down the same link to bias the traffic to the faster links.
Fallback
Using tunnel send and expect keep alives, the tunnels are automatically removed from the set when not active
both ways. This allows the remaining tunnels to share the load automatically without the need for the profiles
feature. Tunnels can also be used with profiles to control if they are active or inactive.
Packet reordering
Packet reordering has also been seen to have some detrimental impact on voice over IP allocations, although
they should be able to cope within the jitter delay. It also has impact on some RFC2833 handling where it can
appear to indicate new DTMF digits as a result of duration going backwards. To help remove this problem
tunnels have a QOS option which will force packets with TOS bits 7 or 4 set (as is common with VoIP traffic)
to be sent consitently to the selected tunnel rather than bonding. If the selected tunnel is not available then
this flag is ignored. You can use load sharing to send sessions to differentr starting points in your set of
bonded tunnels to share out VoIP calls between them.
Bonding48
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
FireBrick 105 User security model
Overall model
There are security levels 1, 2, 3, 4, 5, 6, 7, 8. These are not levels as such, i.e. 8 is not better that 1 − they are
just 8 different settings.
Each of the settings in the FireBrick has a level defined. It is in the setup for each filter, mapping, route, etc.
Each user has a 8 check boxes, one for each level, defining the view settings. When logged in as a user, you
can only view settings on the levels which you have ticked. If you have all 8 levels ticked you can view
anything.
Each user also has 8 check boxes, one for each level, defining the edit settings. If you can view a setting, you
can access the setting page for it, but you can only save changes to that setting if it is on a security level
where you have edit selected. If you have all 8 levels ticked then you can change anything.
There are also security settings for the top level menus. These also define the default setting applied when
you erase something. They also define whether you can see the icon and list of items. E.g. if filters are set for
level 1, then you can only see the filters icon if you have level 1 view rights ticked.
Changing security levels
You can change the security level of anything which you have edit rights to. If you change it to a level for
which you do not have edit rights then you will not be able to change it back. If you change it to a level for
which you do not have view rights, then you will not even be able to see it.
Changing your view/edit rights
You can edit any users view and edit rights if you have edit rights for the security level for that user. i.e. users
have a security level just like any other settings. However, you cannot give or take away any rights for any
user which you do not yourself have. You do not see the check boxes for those levels when you edit that user.
This applies to your own settings too. So, if you remove your own rights you cannot give yourself them back!
Nobody user
The nobody user is a special user − it defines the rights that apply when not logged in. These can be as
comprehensive as any other user. You can make a brick allow complete view and edit or all 8 levels without
logging in even, if you want to, though this is not recommended.
Initially the nobody user can view and edit level 1, which allows it to set a password for the admin user. You
can then log in as the admin user which gives full view and edit rights for all 8 levels. It is recommended that
you always have at least one user with all rights. If not, you can never get those rights back as there is no
login that will be able to tick them in the user settings.
Special settings
There are settings for upgrade and config in the setup menu under security. These specifically relate to
loading new software, and to loading or saving the config. This means you could make a user that, for
example, can save the config or load new software and nothing else. This may be useful for some remote
script that regularly archives the config, and updates bricks with new releases.
FireBrick 105 User security model49
FireBrick 105 Manuals
Settings for top level (icons)
For each top level setting there is a security level under settings/security. This controls if the top level icon
(e.g. filters) is visible.
However, it is possible for a edit to have view or edit rights to an individual setting and not have the top level
ability to list the settings. This can be useful, for example, for manual controlled profiles. If a user has rights to
change one, then it will appear in the main login page as a check box, but not offer the profiles icon itself to
allow listing of profiles. You can also time control when this is visible even.
FireBrick 105 User security model50
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
FireBrick 105 Scripted access
The only configuration access to the FireBrick is via the web interface. However, there are a number of
examples of cases where some automated access is required, e.g. configuring many FireBricks at ones;
uploading new softtware to many FireBricks; or automated saving of configs from many FireBricks.
This page gives a basic outline of the way in which you can access FireBricks using scripts. These scripts
assume you have access to curl which is a standard web page access function. Curl is standard on linux and
is available for windows as well.
Except for config and software loading, all access is normal HTTP port 80 GET commands which may have a
number of arguments in normal URL encoding. You can work out most commands and parameters by simple
inspection of the web page source.
Using Curl
Curl has many arguments. In most examples here the arguments used are as follows :−
−sSilent − don't print progress stats
−fFail silently on errors
−GDo GET instead of POST
−d tag=valueSpecify an argment to be sent
−o /dev/nullDo not actually write the output anywhere
http://iporname/1/ The URL and session for the FireBrick
Login
Before you can access settings you must log in. Once logged in, all web page accesses much be from the
same IP address. Also, they must also have the same session ID. If you are writing a script, the login is the
first step.
Session
The session ID is a number that appears as a directory in front of the actual page name. e.g.
http://my.firebrick.co.uk/1/main is accessing main with session ID 1. Normally when you access the FireBrick,
a random session ID is allocated. However, you can pick a fixed number, such as 1, if you like, and use this
throughout your script.
Often, having logged in, the info function is useful. This produces a file (use −o filename, or use stdout to get
the file). The file contains a number of values each of the form of a letter, =, and a string, on a line by itself.
FireBrick 105 Scripted access51
FireBrick 105 Manuals
Using and grep and sed these can be extracted easily.
The key values are:−
L Language, normally EN
OEM/user interface, normally FB
O
This is relevant when upgrading software
Serial number
S
Often used as a file name in saved configs, etc
V Version number
N Version name
E Internal electronic serial number
M Base MAC address
INumber of MACs (always 23)
Basic settings changes
To change settings, you must perform a GET on a command for the relevant settings, e.g. filter. The full range
of arguments to this can be seen by inspection of the HTML for the edit page. You must not omit any settings.
filter
i
gThe page number minus 1 − this shows the right page on Save so can be omitted
N
A
TP
SAVE Save, this is set to the string Save to cause the settings to be saved
ISLIP Source first address
ITLIP Target first address
ISGIP Source group number, or 0 for not applied
ITGIP Target group number, or 0 for not applied
ISHIP Source last address, or netmask or bit count
ITHIP Target last address, or netmask or bit count
PSLSource port first address
PTLTarget port first address
PSHSource port last address
PTHTargte port last address
PPGPort/protocol group number, or 0 for not applied
ISInterface, source (intterface number, dot sub interface), see interfaces
ITInterface, target
ZAction, 1=Aloow, 0=Drop, 2=Reject, 3=Bounce
The filter number minus 1, e.g. for filter 1, i=0
This is common to most settings
Filter name
This is common to most settings
Security access level, minus 1 (i.e. 0 to 7)
This is common to most settings
The time profile. This is the profile number, 1 to 100
Profile 0 is 24/7
Profile 101 is 9−5 M−F
Profile 102 is 2am Sunday
Add 103 to the profile number to set Not the profile
This is common to most settings
FireBrick 105 Scripted access52
FireBrick 105 Manuals
T1Initial timeout, or 0 for default
T2Ongoing timeout, or 0 for default
TVTOS value
TMTOS mask
O
O2Options2, more options, see HTML
Options, either multiple O= entries for each bit, e.g. O=16 for Log, etc, or one O= value with the sum
of the bit values
Always check that the file was created and is not zero length. Do not overwrite previous versions directly −
check first. Any error in permissions, etc, may generate a zero length file.
Uploading config
To upload a config you need to make a POST containing the config file to upload with the file argument
UPLOAD. e.g.
Then you load the user interface. The FB in the filename is normally the OEM version. You may like to check
the O field in info to confirm which is required. The WEN suffix means Web pages, EN (English).
Again you need to wait for the flash to compleye, and the login again and fetch info to confirm the upload is
complete. The V field in info says the version, and the L says the language. A language of NONE means the
UI has not loaded.
FireBrick 105 Scripted access53
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
FireBrick 105 Features
The FireBrick 105 has a number of standard features and also optional features.
Buying and installing features
To buy a new feature you must contact your FireBrick supplier. The supplier will obtain a feature token which
can be assigned to a feature on your FireBrick. A feature token can then be assigned to a specific feature on
a specific FireBrick. Once assigned the FireBrick can be updated to install all assigned features.
The supplier may simply supply the feature token to you. In which case you can assign and install the feature.
The supplier may assign the feature to the specific FireBrick and feature you have requested. This is usually
the case when ordering a new FireBrick with specific features.
If the supplier has access to the FireBrick, he may install the feature as well which means you do not have to
do anything.
Ask you supplier how they handle feature upgrades. Some suppliers provide complete management of
FireBricks and will do everything for you. Do not be alarmed if they simply provide the feature token as it is a
very simple process for you to assign and install the feature on your FireBrick yourself.
Before buying a feature you should read the description here, and the description of the configuration (icons)
to be sure it will do what you require. If in doubt, ask your supplier.
Obtaining a feature tokens
A feature token is three groups of 4 letters, like XXXX−XXXX−XXXX. It is unique and can be used only once
to assign a feature to a FireBrick and is non transferable or refundable. You obtain a feature token from your
FireBrick supplier.
Assigning a feature
Once you have a feature token you have to assign it to a specific feature on a specific FireBrick. You can do
this in one of two ways:−
If your FireBrick is on line to the internet, has a DNS server defined, and can set it's clock then you
•
can use the setup/features configuration page to enter the feature token and select a feature required.
This assigns the feature and does the installation on your FireBrick in one go and takes around 10
seconds.
If your FireBrick is not on line or you do not wish to use the automated system, you can manually
•
assign the feature token to a specific FireBrick and Feature using the feature tools on this web site.
Once you have done this you will have to install the current features.
Installing current features
Once a feature has been assigned to a specific FireBrick, you need to install the feature on to the FireBrick
itself. This can be done in one of two ways:−
If your FireBrick is on line to the internet, has a DNS server defined, and can set it's clock then you
•
can use the setup/features configuration page to select install assigned features.
If your FireBrick is not on line or you do not wish to use the automated system, you can manually
•
install the feature. To do this obtain an installation key from the feature tools on this web site, and
entering it in to the setup/features page on your FireBrick. This will take about 10 seconds.
FireBrick 105 Features54
FireBrick 105 Manuals
Standard Features
Standard features are included in all standard FireBricks. However, there are various OEM versions also
available. OEM suppliers provide thheir own support and documentation, and they may have alternative
standard features. As such it is possible to have a FireBrick which does not have these standard features.
Filtering
This is the core fire walling function of a FireBrick. It controls the filter icon, and the filtering table. Without this
feature the FireBrick allows all traffic.
Grouping
This is the named IP and port group feature. Without it there are no IP groups and Port groups icons or
options to select these rather than manually entering IP or port ranges.
Subnets
This is the subnets and DHCP feature. If controls the subnets icon. Without it the FireBrick can only operate in
stealth mode.
Mapping
This is the address mapping feature. It controls the mapping icon. Without it the only address mapping that is
possible is NAT as set in subnets.
Optional Features
Optional features can be installed by purchasing a feature token as described above. All of these are available
on a standard FireBrick, however some OEM variants may not allow all of these features to be purchased.
Extras
This provides additional filters, routers administrative users, etc. It is useful for larger or more complex
installations. It does not matter when you by extras (e.g. before or after buying another feature) as you will get
the increased number of all features you have installed.
IP groups10100
Port groups10100
Filters30100
Mapping rules5100
Tunnels10100
100 (+subnets and default
gateway)
FireBrick 105 Features55
FireBrick 105 Manuals
Shaping
Traffic shaping provides a means to group different types of traffic in to speed lanes. The traffic grouping rules
are much like filters in that they allow grouping on interface, IP source/target, protocol, and port source/target.
The speed lanes themselves then allow the rate to each ethernet interface to be set in whole KB/s. There are
also options to allow spare capacity on one or more speed lanes to be taken up by other speed lanes.
The shaping rules also allow a master rate control to which all lanes are subject unless marked otherwise.
This allows, for example, a master lane to be set for an outgoing ADSL line, and then certain types of traffic,
e.g. voice over IP, to queue jump that limitation.
Profiles
Profiles are a general way to turn on off almost any of the rules within the FireBrick. e.g. individual routing or
filtering rules can be associated with a profile. There are standard profiles for 24/7 (always on), 9−5M−F, and
3am Sun. It is possible for a rule to be associated with not a profile, so Not 24/7 means always off. These
pre−defined profiles are available in every FireBrick.
The profiles feature allows manual, timed and ping based profiles to also be used.
Manual profiles are either on or off, and are controlled by a check box on the quick setup screen. This
•
can be useful to allow a whole set of rules to be switched in one go.
Time based profiles can be set on or off for each whole hour in a week. This allows aspects of the
•
FireBrick to be time based.
Ping profiles are on if there are responses to a ping being sent by the FireBrick, and off if there is no
•
response. The pings can be via specific routes and gateways allowing the profile to be used to
monitor an internet link or a server. When ping profiles change, a log can be generated.
Profiles can also be combined, making one profile dependent on another in some way. This allows complex
combinations of time, manual switches and external availability to control operations of the FireBrick. A
common use is for backup internet links allowing a profile control routing to a backup router if a main link
stops working.
Tunnels
Tunnels are a way to create a virtual route from one FireBrick to another over an IP link. It allows virtual
private networks (VPNs) to be created between FireBricks. The protocol used is proprietary but documented
and there is at least one linux implementation freely available. The protocol allows authentication of tunnels
(by IP and MD5/secret) but is not encrypted.
Reporting
Reporting provides a number of ways of extracting information from the FireBrick and includes:−
SNMP reporting of each port, and also traffic through speed lanes•
Email log entries•
Syslog log entries•
Bonding
Bonding provides two ways in which multiple links can be combined.:−
Multiple gateway router bonding − typically used for bonding uplink on multiple ADSL lines. Packets
•
can be sent round robin to up to 4 actual gateways allowing aggregation of the capacity even on a
single data transfer session.
Weighted routing − typically used for bonding downlink on multiple internet links. Sessions can be
•
sent via more than one gateway on a random probability basis which can be used with NAT to ensure
replies come via a specific route. This allows aggregation of overall traffic levels although individual
data transfer sessions will be limited to the speed of one link only.
FireBrick 105 Features56
FireBrick 105 Manuals
5Port
The FireBrick normally operates with a WAN port and a LAN port (on 4 port switch). In this mode the WAN
and LAN can be reversed, putting the 4 port switch on the WAN. There are however only two interfaces for
fire walling, WAN and LAN. The names of these can be changed as necessary.
The 5Port option changes the FireBrick to allow each port to be separately configured to operate
independently or as a switch. There are 5 separate interfaces for fire walling. This allows configurations with
1, 2 or 3 additional DMZs as well as WAN and LAN if required. Stealth mode still operates between the WAN
and LAN interfaces. The factory default for a 5 port switch is to have all 5 ports as distinct interfaces.
VLAN
Normally any VLAN tags received by the FireBrick are ignored and stripped off any packets sent through the
FireBrick.
With the VLAN subnets feature you can set each subject to have a VLAN identity. This means any traffic to
that subnet is tagged with that VLAN tag. When used in conjunction with a VLAN capable switch this allows
independent subnets to operate on different groups of ports on the switch. When the FireBrick acts as a
DHCP server, it serves addresses based on the VLAN tag of the request and hence allows independent
DHCP allocations for each group of ports. Routing rules allow traffic to be routed to specific subnets.
VLAN identities are not a part of shaping, mapping or filtering rules, but by careful allocation of IP ranges to
different VLAN subnets, these rules can use IP ranges to identify each port group.
FireBrick 105 Features57
FireBrick 105 Manuals
FireBrick 105
Manuals
Home
Additional URLs
The FireBrick web interface has a number of additional URLs. These can be accessed manually.
Session ID
Before any web page on the FireBrick can be accessed, you much have the necessary security setting, and
this usually means logging in (unless the nobody user is set to have access). The Firebrick can be accessed
with a number after the domain/IP, e.g. http://my.FireBrick.co.uk/123/. This number is normally allocated
automatically when you access the base page of the FireBrick, and is a session ID for your connection. You
should not normally use a manual session ID, but allow one to be created. However, when making scripts to
access the FireBrick you may find it helpful to use a session ID which you create. The IDs are any non zero
unsigned 32 bit number.
If you have already logged in, then you can simply place the required URL manually after the session ID and
the training / character, e.g. http://my.FireBrick.co.uk/123/reboot
Login
If you are making any sort of script to access the FireBrick, you need to pick a suitable session ID, and
complete a login. The login is done using the URL dologin with arguments of user and
http://my.firebrick.co.uk/123/. e.g. http://my.FireBrick.co.uk/123/dologin?user=fred&pass=test
Once you have logged in, the same IP can access any pages using that session ID until the login timeout, or
until you access logout.
Special URLs
Once logged in, or if the nobody user has appropriate read access, the following special URLs provide various
information or functions :−
URLRightsFunction / information
factoryinitEdit UploadPerforms a full factory reset
Resets all data area − includes statistics, DHCP allocations,
datainitEdit Upload
zapfilters
rebootEdit UploadPerforms immediate restart
downloadView UploadReturns current config file
uploadEdit Upload
infoView SetupProvides a number of parameters used for factory testing
dump?DHCPView DiagnosticsReports table of DHCP allocations in CSV format
logtView Diagnostics
View Filters
Edit for each filter
dynamic tunnel endpoints and various dynamic information.
Does not clear config and does not clear ethernet counters.
Erases all filters
With FILE= a file, posted as multipart/form−data, allows upload
of config, code or UI image
Text dump of current log (optional argument BACK can be used
to specify how many seconds ago from which the log should be
started)
Additional URLs58
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.