<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Multi gateway routing with iptables and iproute2</title>
	<atom:link href="http://blog.khax.net/2009/11/28/multi-gateway-routing-with-iptables-and-iproute2/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.khax.net/2009/11/28/multi-gateway-routing-with-iptables-and-iproute2/</link>
	<description>Adventures in Ubuntu systems administration</description>
	<lastBuildDate>Tue, 26 Jan 2010 19:27:39 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Randy Wallace</title>
		<link>http://blog.khax.net/2009/11/28/multi-gateway-routing-with-iptables-and-iproute2/#comment-123</link>
		<dc:creator>Randy Wallace</dc:creator>
		<pubDate>Mon, 30 Nov 2009 07:38:26 +0000</pubDate>
		<guid isPermaLink="false">http://blog.khax.net/?p=160#comment-123</guid>
		<description>Yes, you&#039;re correct; I found that a true &#039;multi-home&#039; gateway for one subscriber turned into a housekeeping nightmare.  The problem gets worse, though: without a single IP for traffic to &#039;relate&#039; to, HTTPS and other secured technologies would wreak havoc.  Subsequently, there was not way possible to determine which satellite deserved which port(s) traffic, etc...  (i.e. &#039;fair&#039; load balancing across dishes was nearly impossible) Thus, we assigned a set number of subscribers to each satellite.  This also helped to mitigate problems concerning outage(s).  

Upon testing multiple different scenario(s) using multi-homing, I found that they were all to unreliable, especially when handling the loads of traffic we were passing (and frequent outages).  Thus, in the end, I was looking into the Click Modular Router for writing &#039;the perfect routing code&#039; for my application.  I never got around to it, though...

You can only imagine what kinds of issues I encountered using Satellite Internet;  avoid it AT ALL COSTS!  (We had no choice at the time, I was deployed in Iraq)</description>
		<content:encoded><![CDATA[<p>Yes, you&#8217;re correct; I found that a true &#8216;multi-home&#8217; gateway for one subscriber turned into a housekeeping nightmare.  The problem gets worse, though: without a single IP for traffic to &#8216;relate&#8217; to, HTTPS and other secured technologies would wreak havoc.  Subsequently, there was not way possible to determine which satellite deserved which port(s) traffic, etc&#8230;  (i.e. &#8216;fair&#8217; load balancing across dishes was nearly impossible) Thus, we assigned a set number of subscribers to each satellite.  This also helped to mitigate problems concerning outage(s).  </p>
<p>Upon testing multiple different scenario(s) using multi-homing, I found that they were all to unreliable, especially when handling the loads of traffic we were passing (and frequent outages).  Thus, in the end, I was looking into the Click Modular Router for writing &#8216;the perfect routing code&#8217; for my application.  I never got around to it, though&#8230;</p>
<p>You can only imagine what kinds of issues I encountered using Satellite Internet;  avoid it AT ALL COSTS!  (We had no choice at the time, I was deployed in Iraq)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: agentk</title>
		<link>http://blog.khax.net/2009/11/28/multi-gateway-routing-with-iptables-and-iproute2/#comment-122</link>
		<dc:creator>agentk</dc:creator>
		<pubDate>Mon, 30 Nov 2009 01:41:48 +0000</pubDate>
		<guid isPermaLink="false">http://blog.khax.net/?p=160#comment-122</guid>
		<description>Thanks Randy, some good examples of real world use in there. From what I can see users were partitioned per satellite? I have not looked at failover or QoS yet. I was thinking of just checking interfaces status via cron and reconfiguring based on that.
My biggest problem was that one of my providers blocks outgoing packets not marked as being from my IP. So if a packet ended up going via the wrong provider they were just being dropped.
This most affected returning of incoming packets as outgoing connections always ended up back on the connection they were sent from.
For load balancing &#039;ip route default nexthop&#039; seems to work ok, but stutters quite bad when a connection goes down.
As does &#039;iptables -m statistic --mode nth --every 2&#039; balancing. But doing it in iptables for outgoing connections seems to balance better and provide better throughput.
I guess that might be the subject of a new post.</description>
		<content:encoded><![CDATA[<p>Thanks Randy, some good examples of real world use in there. From what I can see users were partitioned per satellite? I have not looked at failover or QoS yet. I was thinking of just checking interfaces status via cron and reconfiguring based on that.<br />
My biggest problem was that one of my providers blocks outgoing packets not marked as being from my IP. So if a packet ended up going via the wrong provider they were just being dropped.<br />
This most affected returning of incoming packets as outgoing connections always ended up back on the connection they were sent from.<br />
For load balancing &#8216;ip route default nexthop&#8217; seems to work ok, but stutters quite bad when a connection goes down.<br />
As does &#8216;iptables -m statistic &#8211;mode nth &#8211;every 2&#8242; balancing. But doing it in iptables for outgoing connections seems to balance better and provide better throughput.<br />
I guess that might be the subject of a new post.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Randy Wallace</title>
		<link>http://blog.khax.net/2009/11/28/multi-gateway-routing-with-iptables-and-iproute2/#comment-121</link>
		<dc:creator>Randy Wallace</dc:creator>
		<pubDate>Sun, 29 Nov 2009 23:42:51 +0000</pubDate>
		<guid isPermaLink="false">http://blog.khax.net/?p=160#comment-121</guid>
		<description>A few years ago, I did a project overseas which involved providing internet to a LAN.  At the time, I chose to use a Linux Server / Router to do 99% of the work.  Our internet connection was a farm of Internet Satellite connections (price and dish-size was a factor, which led to this solution).  I ended up writing a Python Script which performed a myriad of tasks to include: balancing subscribers across internet connections, traffic shaping rules manipulation (via tc), firewall port blocking, etc... You may, then, be interested in seeing the rules created by my script: http://greamin.com/server/PastWork/UbuntuGateway.html .  Subsequently, on that site, there is also the script, and the configuration file, which made my life remarkably easy!  It worked *beautifully* and provided a high level of service per subscriber, regardless of their network demands!</description>
		<content:encoded><![CDATA[<p>A few years ago, I did a project overseas which involved providing internet to a LAN.  At the time, I chose to use a Linux Server / Router to do 99% of the work.  Our internet connection was a farm of Internet Satellite connections (price and dish-size was a factor, which led to this solution).  I ended up writing a Python Script which performed a myriad of tasks to include: balancing subscribers across internet connections, traffic shaping rules manipulation (via tc), firewall port blocking, etc&#8230; You may, then, be interested in seeing the rules created by my script: <a href="http://greamin.com/server/PastWork/UbuntuGateway.html" rel="nofollow">http://greamin.com/server/PastWork/UbuntuGateway.html</a> .  Subsequently, on that site, there is also the script, and the configuration file, which made my life remarkably easy!  It worked *beautifully* and provided a high level of service per subscriber, regardless of their network demands!</p>
]]></content:encoded>
	</item>
</channel>
</rss>
