<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://kb.linuxvirtualserver.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=James</id>
		<title>LVSKB - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://kb.linuxvirtualserver.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=James"/>
		<link rel="alternate" type="text/html" href="http://kb.linuxvirtualserver.org/wiki/Special:Contributions/James"/>
		<updated>2026-05-30T10:34:31Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>http://kb.linuxvirtualserver.org/wiki?title=Building_Windows_Media_Service_Cluster_using_LVS&amp;diff=3884</id>
		<title>Building Windows Media Service Cluster using LVS</title>
		<link rel="alternate" type="text/html" href="http://kb.linuxvirtualserver.org/wiki?title=Building_Windows_Media_Service_Cluster_using_LVS&amp;diff=3884"/>
				<updated>2006-12-06T22:52:15Z</updated>
		
		<summary type="html">&lt;p&gt;James: /* Configuration Example */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Microsoft Windows Media Service uses uses two streaming media protocols to deliver content as a unicast stream to clients:&lt;br /&gt;
* Real Time Streaming Protocol ([[RTSP]])&lt;br /&gt;
* Microsoft Media Server (MMS) protocol&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Architecture ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuration Example ==&lt;br /&gt;
In order for us to get this to work, we need to allow the following ports in:&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;80           tcp (&amp;lt;em&amp;gt;ONLY NEEDED IF YOU ARE SERVING STREAMS THROUGH HTTP&amp;lt;/em&amp;gt;)&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;554          tcp/udp&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;1755         tcp/udp&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;1024-5000    udp&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;This can be done like so, replacing &amp;lt;b&amp;gt;$EXT_IF&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$EXT_IP&amp;lt;/b&amp;gt; with your appropriate interface and IP:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 1755 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 554 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 554 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1024:5000 -j ACCEPT&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  iptables -A INPUT -i eth0 -p tcp -s 0/0 -d 1.2.3.4 --dport 1755 -j ACCEPT)&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;Next, we need to take a group the packets by using the MANGLE table in iptables.  To do that you would do the following, replacing &amp;lt;b&amp;gt;$EXT_IF&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;$EXT_IP&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$WMS_MARK&amp;lt;/b&amp;gt; with your appropriate interface, IP and mark that you would like to tag the packets with:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 554 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 554 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 1755 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1755 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1024:5000 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  iptables -t mangle -A PREROUTING -i eth0 -p tcp -s 0/0 -d 1.2.3.4 --dport 554 -j MARK --set-mark 1)&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;Next, we need to tell LVS to do the load balancing.  This can be done by doing the following, replacing &amp;lt;b&amp;gt;$WMS_MARK&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$RSx_IP&amp;lt;/b&amp;gt; with the appropriate mark that you chose above and your real server IPs:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;ipvsadm -D -f $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -A -f $WMS_MARK -s rr -p 600&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -a -f $WMS_MARK -r $RS1_IP:0 -m&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -a -f $WMS_MARK -r $RS1_IP:0 -m&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  ipvsadm -A -f WMSLVS1 -s rr -p 600)&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  ipvsadm -a -f WMSLVS1 -r 10.10.10.1:0 -m)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;Once you have completed these steps, you should have a working Windows Media Streaming Server LVS!  Enjoy!&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
In the above configuration example you see that I am using Round-Robin (rr).  This is not necessary, you can use any type you want.  I have switched my personal LVS setup to use Weighted Least Connections (wlc).&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* http://archive.linuxvirtualserver.org/html/lvs-users/2004-03/msg00176.html&lt;br /&gt;
* [http://www.microsoft.com/windows/windowsmedia/forpros/serve/firewall.aspx Firewall Information for Windows Media Services 9 Series]&lt;br /&gt;
* http://archive.linuxvirtualserver.org/html/lvs-users/2004-03/msg00176.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{lvs-example-stub}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:LVS Examples|Media]]&lt;/div&gt;</summary>
		<author><name>James</name></author>	</entry>

	<entry>
		<id>http://kb.linuxvirtualserver.org/wiki?title=Building_Windows_Media_Service_Cluster_using_LVS&amp;diff=3405</id>
		<title>Building Windows Media Service Cluster using LVS</title>
		<link rel="alternate" type="text/html" href="http://kb.linuxvirtualserver.org/wiki?title=Building_Windows_Media_Service_Cluster_using_LVS&amp;diff=3405"/>
				<updated>2006-07-13T17:35:59Z</updated>
		
		<summary type="html">&lt;p&gt;James: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Microsoft Windows Media Service uses uses two streaming media protocols to deliver content as a unicast stream to clients:&lt;br /&gt;
* Real Time Streaming Protocol ([[RTSP]])&lt;br /&gt;
* Microsoft Media Server (MMS) protocol&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Architecture ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuration Example ==&lt;br /&gt;
In order for us to get this to work, we need to allow the following ports in:&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;80           tcp (&amp;lt;em&amp;gt;ONLY NEEDED IF YOU ARE SERVING STREAMS THROUGH HTTP&amp;lt;/em&amp;gt;)&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;554          tcp/udp&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;1755         tcp/udp&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;1024-5000    udp&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;This can be done like so, replacing &amp;lt;b&amp;gt;$EXT_IF&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$EXT_IP&amp;lt;/b&amp;gt; with your appropriate interface and IP:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 1755 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 554 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 554 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1024:5000 -j ACCEPT&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  iptables -A INPUT -i eth0 -p tcp -s 0/0 -d 1.2.3.4 --dport 1755 -j ACCEPT)&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;Next, we need to take a group the packets by using the MANGLE table in iptables.  To do that you would do the following, replacing &amp;lt;b&amp;gt;$EXT_IF&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;$EXT_IP&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$WMS_MARK&amp;lt;/b&amp;gt; with your appropriate interface, IP and mark that you would like to tag the packets with:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 554 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 554 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 1755 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1755 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1024:5000 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  iptables -t mangle -A PREROUTING -i eth0 -p tcp -s 0/0 -d 1.2.3.4 --dport 554 -j MARK --set-mark WMSLVS1)&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;Next, we need to tell LVS to do the load balancing.  This can be done by doing the following, replacing &amp;lt;b&amp;gt;$WMS_MARK&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$RSx_IP&amp;lt;/b&amp;gt; with the appropriate mark that you chose above and your real server IPs:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;ipvsadm -D -f $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -A -f $WMS_MARK -s rr -p 600&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -a -f $WMS_MARK -r $RS1_IP:0 -m&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -a -f $WMS_MARK -r $RS1_IP:0 -m&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  ipvsadm -A -f WMSLVS1 -s rr -p 600)&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  ipvsadm -a -f WMSLVS1 -r 10.10.10.1:0 -m)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;Once you have completed these steps, you should have a working Windows Media Streaming Server LVS!  Enjoy!&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
In the above configuration example you see that I am using Round-Robin (rr).  This is not necessary, you can use any type you want.  I have switched my personal LVS setup to use Weighted Least Connections (wlc).&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* http://archive.linuxvirtualserver.org/html/lvs-users/2004-03/msg00176.html&lt;br /&gt;
* [http://www.microsoft.com/windows/windowsmedia/forpros/serve/firewall.aspx Firewall Information for Windows Media Services 9 Series]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{lvs-example-stub}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:LVS Examples|Media]]&lt;/div&gt;</summary>
		<author><name>James</name></author>	</entry>

	<entry>
		<id>http://kb.linuxvirtualserver.org/wiki?title=Building_Windows_Media_Service_Cluster_using_LVS&amp;diff=3404</id>
		<title>Building Windows Media Service Cluster using LVS</title>
		<link rel="alternate" type="text/html" href="http://kb.linuxvirtualserver.org/wiki?title=Building_Windows_Media_Service_Cluster_using_LVS&amp;diff=3404"/>
				<updated>2006-07-13T17:21:14Z</updated>
		
		<summary type="html">&lt;p&gt;James: /* Configuration Example */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Microsoft Windows Media Service uses uses two streaming media protocols to deliver content as a unicast stream to clients:&lt;br /&gt;
* Real Time Streaming Protocol ([[RTSP]])&lt;br /&gt;
* Microsoft Media Server (MMS) protocol&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Architecture ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuration Example ==&lt;br /&gt;
In order for us to get this to work, we need to allow the following ports in:&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;80           tcp (&amp;lt;em&amp;gt;ONLY NEEDED IF YOU ARE SERVING STREAMS THROUGH HTTP&amp;lt;/em&amp;gt;)&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;554          tcp/udp&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;1755         tcp/udp&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;1024-5000    udp&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;This can be done like so, replacing &amp;lt;b&amp;gt;$EXT_IF&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$EXT_IP&amp;lt;/b&amp;gt; with your appropriate interface and IP:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 1755 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 554 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 554 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1024:5000 -j ACCEPT&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  iptables -A INPUT -i eth0 -p tcp -s 0/0 -d 1.2.3.4 --dport 1755 -j ACCEPT)&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;Next, we need to take a group the packets by using the MANGLE table in iptables.  To do that you would do the following, replacing &amp;lt;b&amp;gt;$EXT_IF&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;$EXT_IP&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$WMS_MARK&amp;lt;/b&amp;gt; with your appropriate interface, IP and mark that you would like to tag the packets with:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 554 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 554 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 1755 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1755 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1024:5000 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  iptables -t mangle -A PREROUTING -i eth0 -p tcp -s 0/0 -d 1.2.3.4 --dport 554 -j MARK --set-mark WMSLVS1)&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;Next, we need to tell LVS to do the load balancing.  This can be done by doing the following, replacing &amp;lt;b&amp;gt;$WMS_MARK&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$RSx_IP&amp;lt;/b&amp;gt; with the appropriate mark that you chose above and your real server IPs:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;ipvsadm -D -f $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -A -f $WMS_MARK -s rr -p 600&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -a -f $WMS_MARK -r $RS1_IP:0 -m&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -a -f $WMS_MARK -r $RS1_IP:0 -m&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  ipvsadm -A -f WMSLVS1 -s rr -p 600)&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  ipvsadm -a -f WMSLVS1 -r 10.10.10.1:0 -m)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;Once you have completed these steps, you should have a working Windows Media Streaming Server LVS!  Enjoy!&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* http://archive.linuxvirtualserver.org/html/lvs-users/2004-03/msg00176.html&lt;br /&gt;
* [http://www.microsoft.com/windows/windowsmedia/forpros/serve/firewall.aspx Firewall Information for Windows Media Services 9 Series]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{lvs-example-stub}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:LVS Examples|Media]]&lt;/div&gt;</summary>
		<author><name>James</name></author>	</entry>

	<entry>
		<id>http://kb.linuxvirtualserver.org/wiki?title=Building_Windows_Media_Service_Cluster_using_LVS&amp;diff=3403</id>
		<title>Building Windows Media Service Cluster using LVS</title>
		<link rel="alternate" type="text/html" href="http://kb.linuxvirtualserver.org/wiki?title=Building_Windows_Media_Service_Cluster_using_LVS&amp;diff=3403"/>
				<updated>2006-07-13T17:17:54Z</updated>
		
		<summary type="html">&lt;p&gt;James: /* Configuration Example */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Microsoft Windows Media Service uses uses two streaming media protocols to deliver content as a unicast stream to clients:&lt;br /&gt;
* Real Time Streaming Protocol ([[RTSP]])&lt;br /&gt;
* Microsoft Media Server (MMS) protocol&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Architecture ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Configuration Example ==&lt;br /&gt;
In order for us to get this to work, we need to allow the following ports in:&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;80           tcp (&amp;lt;em&amp;gt;ONLY NEEDED IF YOU ARE SERVING STREAMS THROUGH HTTP&amp;lt;/em&amp;gt;)&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;554          tcp/udp&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;1755         tcp/udp&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;1024-5000    udp&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;This can be done like so, replacing &amp;lt;b&amp;gt;$EXT_IF&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$EXT_IP&amp;lt;/b&amp;gt; with your appropriate interface and IP:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 1755 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 554 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 554 -j ACCEPT&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -A INPUT -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1024:5000 -j ACCEPT&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  iptables -A INPUT -i eth0 -p tcp -s 0/0 -d 1.2.3.4 --dport 1755 -j ACCEPT)&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;Next, we need to take a group the packets by using the MANGLE table in iptables.  To do that you would do the following, replacing &amp;lt;b&amp;gt;$EXT_IF&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;$EXT_IP&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$WMS_MARK&amp;lt;/b&amp;gt; with your appropriate interface, IP and mark that you would like to tag the packets with:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 554 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 554 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p tcp -s 0/0 -d $EXT_IP --dport 1755 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1755 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;iptables -t mangle -A PREROUTING -i $EXT_IF -p udp -s 0/0 -d $EXT_IP --dport 1024:5000 -j MARK --set-mark $WMS_MARK&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  iptables -t mangle -A PREROUTING -i eth0 -p tcp -s 0/0 -d 1.2.3.4 --dport 554 -j MARK --set-mark WMSLVS1)&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;Next, we need to tell LVS to do the load balancing.  This can be done by doing the following, replacing &amp;lt;b&amp;gt;$WMS_MARK&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;$RSx_IP&amp;lt;/b&amp;gt; with the appropriate mark that you chose above and your real server IPs:&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;ipvsadm -D -f $WMS_MARK&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -A -f $WMS_MARK -s rr -p 600&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -a -f $WMS_MARK -r $RS1_IP:0 -m&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;ipvsadm -a -f $WMS_MARK -r $RS1_2P:0 -m&amp;lt;/li&amp;gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  ipvsadm -A -f WMSLVS1 -s rr -p 600)&lt;br /&gt;
&amp;lt;br/&amp;gt;(&amp;lt;b&amp;gt;&amp;lt;em&amp;gt;example:&amp;lt;/em&amp;gt;&amp;lt;/b&amp;gt;  ipvsadm -a -f WMSLVS1 -r 10.10.10.1:0 -m)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;Once you have completed these steps, you should have a working Windows Media Streaming Server LVS!  Enjoy!&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* http://archive.linuxvirtualserver.org/html/lvs-users/2004-03/msg00176.html&lt;br /&gt;
* [http://www.microsoft.com/windows/windowsmedia/forpros/serve/firewall.aspx Firewall Information for Windows Media Services 9 Series]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{lvs-example-stub}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:LVS Examples|Media]]&lt;/div&gt;</summary>
		<author><name>James</name></author>	</entry>

	</feed>