<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>108.bz &#187; FortiGate</title>
	<atom:link href="http://www.108.bz/posts/tag/fortigate/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.108.bz</link>
	<description>Wandering futilities...</description>
	<lastBuildDate>Fri, 27 May 2011 09:08:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
		<item>
		<title>FortiGate firewall clusters group-id</title>
		<link>http://www.108.bz/posts/it/fortigate-firewall-clusters-group-id/</link>
		<comments>http://www.108.bz/posts/it/fortigate-firewall-clusters-group-id/#comments</comments>
		<pubDate>Sat, 03 Jul 2010 15:53:31 +0000</pubDate>
		<dc:creator>Giuliano</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[FortiGate]]></category>
		<category><![CDATA[HA]]></category>
		<category><![CDATA[High Availability]]></category>
		<category><![CDATA[Networking]]></category>

		<guid isPermaLink="false">http://www.108.bz/?p=527</guid>
		<description><![CDATA[A newly installed FortiGate cluster (a simple two node HA active-passive setup) and some packet loss issues&#8230; Ping from the LAN side to the Internet (or from the firewall itself) resulted in about 20% packet loss, while the other way around (WAN to firewall&#8217;s main public IP) didn&#8217;t work at all. I used the following [...]]]></description>
			<content:encoded><![CDATA[<p>A newly installed FortiGate cluster (a simple two node HA active-passive setup) and some packet loss issues&#8230;<br />
Ping from the LAN side to the Internet (or from the firewall itself) resulted in about 20% packet loss, while the other way around (WAN to firewall&#8217;s main public IP) didn&#8217;t work at all.</p>
<p>I used the following command to check my MAC addresses:</p>
<div class="codecolorer-container text blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">FORTIGATE-PRI # diagnose hardware deviceinfo nic wan1<br />
[..]<br />
Current_HWaddr &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;00:09:0f:09:00:08<br />
Permanent_HWaddr &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;00:09:0f:d1:be:ef<br />
[..]</div></div>
<p>Then resorted to the &#8220;show mac&#8221; switches facilites (some Cisco, some ProCurve) to know on which network ports that particular MAC lied&#8230; Only to discover that the cluster&#8217;s &#8220;logical&#8221; MAC address (00:09:0f:09:00:08) wasn&#8217;t really located where I expected it to be.<br />
Well, FortiGate&#8217;s MAC addresses <i>aren&#8217;t randomly generated</i>. They have predictable values that depend on the firewall&#8217;s port number. The eight port (or wan1, in my case) will always have a virtual MAC as the one above. What will happen if you have two clusters (as we had) sitting on the same L2 network segment (on the same broadcast domain, that is)? You said MAC address conflict? You&#8217;re right.<br />
The solution is simple, use the <span style="font-family: Bitstream Vera Sans Mono,Courier New,monospace;">group-id</span> directive to tweak the logical MAC address, i.e.:</p>
<div class="codecolorer-container text blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">config system ha<br />
&nbsp; &nbsp; set group-id 10<br />
end</div></div>
<p>Changes the second right-most bytes of the MAC, from 00 to 0a:</p>
<div class="codecolorer-container text blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">before &nbsp;00:09:0f:09:00:08<br />
after &nbsp; 00:09:0f:09:0a:08</div></div>
<p>Point is that the &#8220;FortiOS High Availablity <a href="http://docs.fortinet.com/fgt/handbook/fortigate-ha-40-mr2.pdf">Handbook</a>&#8221; explains the case very thoroughly! See page 192, paragraph &#8220;Diagnosing packet loss with two FortiGate HA clusters in the same broadcast domain&#8221;. We&#8217;re so used to discardable product documentation that sometimes we don&#8217;t even try to look for clues where they should normally reside.<br />
Instead of troubleshooting, this time, I should really have Read The (unexpectedly) Fine Manual&#8230; </p>
 <img src="http://www.108.bz/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=527" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.108.bz/posts/it/fortigate-firewall-clusters-group-id/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FortiGate High Availability interface addressing</title>
		<link>http://www.108.bz/posts/it/fortigate-high-availability-interface-addressing/</link>
		<comments>http://www.108.bz/posts/it/fortigate-high-availability-interface-addressing/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 15:01:51 +0000</pubDate>
		<dc:creator>Giuliano</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[FortiGate]]></category>
		<category><![CDATA[HA]]></category>
		<category><![CDATA[High Availability]]></category>

		<guid isPermaLink="false">http://www.108.bz/?p=156</guid>
		<description><![CDATA[When setting up High Availability on FortiGate, one thing struck me as a bit unusual. Differently from other firewall clustering solutions (correct me if I&#8217;m wrong), FortiGate devices don&#8217;t force you to assign both physical and logical IP addresses on interfaces. You are supposed to configure logical IP addresses only. This implies that you can&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>When setting up High Availability on FortiGate, one thing struck me as a bit unusual. Differently from other firewall clustering solutions (correct me if I&#8217;m wrong), FortiGate devices don&#8217;t force you to assign both <em>physical</em> and <em>logical</em> IP addresses on interfaces. You are supposed to configure logical IP addresses <em>only</em>. This implies that you can&#8217;t directly access a specific node/firewall in your cluster. You have to SSH into the Master unit and, from there, log into the Subordinate one(s). Here are the relevant CLI commans:</p>
<div class="codecolorer-container text blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">FW-NODE-A # get system ha status<br />
Model: 100<br />
Mode: a-p<br />
Group: 0<br />
Debug: 0<br />
ses_pickup: disable<br />
Master:129 FW-NODE-A &nbsp; &nbsp; &nbsp;FG100C3000000000 0<br />
Slave :128 FW-NODE-B &nbsp; &nbsp; &nbsp;FG100C3000000001 1<br />
number of vcluster: 1<br />
vcluster 1: work 169.254.0.1<br />
Master:0 FG100C3000000000<br />
Slave :1 FG100C3000000001<br />
<br />
FW-NODE-A # execute ha manage ?<br />
please input peer box index.<br />
&lt;1&gt; &nbsp; &nbsp; Subsidary unit FG100C3000000001<br />
<br />
FW-NODE-A # execute ha manage 1<br />
<br />
FW-NODE-B $</div></div>
<p>I wonder what would happen if the Master unit were to hang. I mean: stuck itself in a state where the failover mechanism doesn&#8217;t work and neither does SSH/HTTPS access. How could you remotely force a failover to another node? In such a scenario, is a physical power cycle of the master unit the only option?</p>
 <img src="http://www.108.bz/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=156" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.108.bz/posts/it/fortigate-high-availability-interface-addressing/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>FortiGate/Cisco Layer 2 woes</title>
		<link>http://www.108.bz/posts/it/fortigate-cisco-layer-2-woes/</link>
		<comments>http://www.108.bz/posts/it/fortigate-cisco-layer-2-woes/#comments</comments>
		<pubDate>Sun, 27 Dec 2009 13:41:17 +0000</pubDate>
		<dc:creator>Giuliano</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Ethernet]]></category>
		<category><![CDATA[FortiGate]]></category>
		<category><![CDATA[Layer 2]]></category>
		<category><![CDATA[MTU]]></category>
		<category><![CDATA[Weirdnesses]]></category>

		<guid isPermaLink="false">http://www.108.bz/?p=103</guid>
		<description><![CDATA[The other day I swapped a firewall with a different one, a FortiGate 60B. After having re-created the config, everything seemed to be functional but: Internet browsing &#8220;felt&#8221; a bit sluggish (I was on a 20Mbps uplink) and, here comes the weirdness, when I did &#8220;something&#8221; the whole WAN connectivity would just hang for a [...]]]></description>
			<content:encoded><![CDATA[<p>The other day I swapped a firewall with a different one, a FortiGate 60B. After having re-created the config, everything seemed to be functional but: Internet browsing &#8220;felt&#8221; a bit sluggish (I was on a 20Mbps uplink) and, here comes the weirdness, when I did &#8220;something&#8221; the whole WAN connectivity would just hang for a couple of minutes. The issue was reproducible by trying to connect via Remote Desktop to one of the published servers (by tunneling through my Employer&#8217;s Office, and bouncing back on the Customer&#8217;s firewall) or even by opening my Flickr page (but then the cause could&#8217;ve been the poor quality of the pictures therein <img src='http://www.108.bz/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ).<br />
At first, I thought about a dreadful MTU issue, maybe the firewall/router or something along the road was choking when fragmenting or reassembling packets. But, a &#8220;<span style="font-family: Bitstream Vera Sans Mono,Courier New,monospace;">ping <em>outside_host</em> -s 1472 -M do</span>&#8221; (or &#8220;<span style="font-family: Bitstream Vera Sans Mono,Courier New,monospace;">ping -f -l 1472 <em>outside_host</em></span>&#8220;, on Windows) proved that ICMP packets 1500 bytes big (1472 bytes of payload, plus 28 bytes of ICMP header) could indeed flow out and back without being fragmented: the issue was totally random.<br />
Besides that, even lowering the MTU on my PC wouldn&#8217;t change anything.<br />
After much cursing, I tried to see if anything was going on at L2 level. Firewall and router (Cisco, owned by the ISP, not accessible to me) were connected together by a crossover cable.<br />
The relevant FortiOS CLI command is the following:</p>
<div class="codecolorer-container text blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">FIREWALLNAME # diagnose hardware deviceinfo nic wan1<br />
System_Device_Name &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;wan1<br />
Link &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;up<br />
Speed &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 100 Mbps full duplex<br />
FlowControl &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Tx off, Rxoff<br />
MTU_Size &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1500</div></div>
<p>My firewall (the above example comes out from another one) was negotiating 100Mbps speed, Half Duplex. Nothing wrong with that, I tried to fix these parameters on the FortiGate but the Ethernet link would not come up. So, auto-negotiation was mandatory and I had no way to change that on the router.<br />
At some point, when Internet connectivity was stuck, it seemed to me that unplugging and plugging back in the cable between firewall/router, would allow for a faster recovery. Definitely, something was wrong at L2.<br />
The solution was to insert a 15€ DLink switch between firewall and router. No problems since then, it really looks like FortiGate and Cisco NICs don&#8217;t play well together, at least in that conditions. The Customer will call the ISP in order to tweak the settings Cisco side and see if they can get rid of the switch.<br />
The proper way to diagnose the problem would&#8217;ve been to ping the router from the outside during a connectivity stop. Since the issue was &#8220;local&#8221;, the router should answer while no traffic should pass from the firewall to the router.</p>
 <img src="http://www.108.bz/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=103" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.108.bz/posts/it/fortigate-cisco-layer-2-woes/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

