/* $Id$ */ /* traffic_shaper_wizard.xml part of pfSense (http://www.pfsense.org/) Copyright (C) 2005 Bill Marquette - bill.marquette@gmail.com. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ 9 1 pfSense Traffic Shaper Wizard true This wizard will guide you through setting up the pfSense traffic shaper. Next submit Going any further will wipe your existing shaper config! If you do not wish to continue, please click the pfSense logo at the top to return to the webConfigurator. /* Check to see if ALTQ can even be used */ if(!is_altq_capable($config['interfaces']['wan']['if']) or !is_altq_capable($config['interfaces']['lan']['if'])) { $message="Either your LAN or WAN interface doesn't support ALTQ. The wizard cannot continue."; header("Location: /wizard.php?xml=traffic_shaper_wizard.xml&stepid=7&message={$message}"); } step1_stepsubmitphpaction(); /usr/local/www/wizards/traffic_shaper_wizard.inc 2 pfSense Traffic Shaper Wizard Shaper configuration Setup network speeds listtopic Inside Inside interface for shaping your download speeds interfaces_selection This is usually the LAN interface ezshaper->step2->inside_int Download The download speed of your WAN link in Kbits/second. Note: PPPOE users should take into account PPPOE overhead and put a lower speed here. input ^[0-9]*$ Download speed must be numerical ezshaper->step2->download Outside Outside interface for shaping your upload speeds interfaces_selection This is usually the WAN interface ezshaper->step2->outside_int Upload The upload speed of your WAN link in Kbits/second. Note: PPPOE users should take into account PPPOE overhead and put a lower speed here. input ^[0-9]*$ Upload speed must be numerical ezshaper->step2->upload Next submit step2_stepsubmitphpaction(); /usr/local/www/wizards/traffic_shaper_wizard.inc 3 pfSense Traffic Shaper Wizard Voice over IP Enable checkbox Prioritize Voice over IP traffic This will raise the priority of VOIP traffic above all other traffic. ezshaper->step3->enable Next submit VOIP specific settings listtopic Provider select Choose Generic if your provider isn't listed. ezshaper->step3->provider Address inputalias (Optional) If this is chosen, the provider field will be overridden. This allows you to just provide the IP address of the VOIP adaptor to prioritize. NOTE: You can also use a Firewall Alias in this location. ezshaper->step3->address IP Address field is non-blank and doesn't look like an IP address. Bandwidth select Total bandwidth guarantee for VOIP phone(s) 128 ezshaper->step3->bandwidth Next submit step3_stepsubmitphpaction(); /usr/local/www/wizards/traffic_shaper_wizard.inc 4 pfSense Traffic Shaper Wizard Penalty Box true true Enable checkbox Penalize IP or Alias This will lower the priority of traffic from this IP or alias. Address,BandwidthUp,BandwidthDown ezshaper->step4->enable Next submit PenaltyBox specific settings listtopic Address inputalias This allows you to just provide the IP address of the computer(s) to Penalize. NOTE: You can also use a Firewall Alias in this location. ezshaper->step4->address IP Address field is non-blank and doesn't look like an IP address. BandwidthUp The upload limit in Kbits/second. input ^[0-9]*$ Upload speed must be numerical ezshaper->step4->bandwidthup BandwidthDown The download limit Kbits/second. input ^[0-9]*$ Download speed must be numerical ezshaper->step4->bandwidthdown Next submit step4_stepsubmitphpaction(); /usr/local/www/wizards/traffic_shaper_wizard.inc 5 pfSense Traffic Shaper Wizard Peer to Peer networking true true Enable checkbox Lower priority of Peer-to-Peer traffic This will lower the priority of P2P traffic below all other traffic. Please check the items that you would like to prioritize lower than normal traffic. p2pCatchAll,BandwidthUp,BandwidthDown,Aimster,BitTorrent,BuddyShare,CuteMX,DCplusplus,dcc,DirectConnect,DirectFileExpress,EDonkey2000,FastTrack,Gnutella,grouper,hotComm,HotlineConnect,iMesh,Napster,OpenNap,Scour,Shareaza,SongSpy,WinMX ezshaper->step5->enable Next submit p2p Catch all listtopic p2pCatchAll checkbox When enabled, all uncategorized traffic is fed to the p2p queue. ezshaper->step5->p2pcatchall BandwidthUp The upload limit in Kbits/second. input ^[0-9]*$ Upload speed must be numerical ezshaper->step5->bandwidthup BandwidthDown The download limit Kbits/second. input ^[0-9]*$ Download speed must be numerical ezshaper->step5->bandwidthdown Enable/Disable specific P2P protocols listtopic Aimster checkbox Aimster and other P2P using the Aimster protocol and ports ezshaper->step5->aimster BitTorrent checkbox Bittorrent and other P2P using the Torrent protocol and ports ezshaper->step5->bittorrent BuddyShare checkbox BuddyShare and other P2P using the BuddyShare protocol and ports ezshaper->step5->buddyshare CuteMX checkbox CuteMX and other P2P using the CuteMX protocol and ports ezshaper->step5->cutemx DCplusplus checkbox DC++ and other P2P using the DC++ protocol and ports ezshaper->step5->dcplusplus DCC checkbox irc DCC file transfers ezshaper->step5->dcc DirectConnect checkbox DirectConnect and other P2P using the DirectConnect protocol and ports ezshaper->step5->directconnect DirectFileExpress checkbox DirectFileExpress and other P2P using the DirectFileExpress protocol and ports ezshaper->step5->directfileexpress eDonkey2000 checkbox eDonkey and other P2P using the eDonkey protocol and ports ezshaper->step5->edonkey2000 FastTrack checkbox FastTrack and other P2P using the FastTrack protocol and ports ezshaper->step5->fasttrack Gnutella checkbox Gnutella and other P2P using the Gnutella protocol and ports ezshaper->step5->gnutella grouper checkbox grouper and other P2P using the grouper protocol and ports ezshaper->step5->grouper hotComm checkbox hotComm and other P2P using the hotComm protocol and ports ezshaper->step5->hotcomm HotlineConnect checkbox HotlineConnect and other P2P using the HotlineConnect protocol and ports ezshaper->step5->hotlineconnect iMesh checkbox iMesh and other P2P using the iMesh protocol and ports ezshaper->step5->imesh Napster checkbox Napster and other P2P using the Napster protocol and ports ezshaper->step5->napster OpenNap checkbox OpenNap and other P2P using the OpenNap protocol and ports ezshaper->step5->opennap Scour checkbox Scour and other P2P using the Scour protocol and ports ezshaper->step5->scour Shareaza checkbox Shareaza and other P2P using the Shareaza protocol and ports ezshaper->step5->shareaza SongSpy checkbox SongSpy and other P2P using the SongSpy protocol and ports ezshaper->step5->songspy WinMX checkbox WinMX and other P2P using the WinMX protocol and ports ezshaper->step5->winmx Next submit step5_stepsubmitphpaction(); /usr/local/www/wizards/traffic_shaper_wizard.inc 6 pfSense Traffic Shaper Wizard true Network Games Enable checkbox Prioritize network gaming traffic This will raise the priority of gaming traffic to higher than most traffic. BattleNET,Battlefield2,CallOfDuty,Counterstrike,DeltaForce,DOOM3,EmpireEarth,Everquest,Everquest2,FarCry,GunZOnline,HalfLife,HalfLife2,Halo2,Lineage2,PlanetSide,QuakeIII,TigerWoods2004PS2,UnrealTournament,WolfensteinEnemyTerritory,WorldOfWarcraft,XBox360 true ezshaper->step6->enable Next submit Enable/Disable specific games listtopic BattleNET checkbox Battle.net - Virtually every game from Blizzard publishing should match this. This includes the following game series: Starcraft, Diablo, Warcraft. Guild Wars also uses this port. ezshaper->step6->battlenet Battlefield2 checkbox Battlefield 2 - this game uses a LARGE port range, be aware that you may need to manually rearrange the resulting rules to correctly prioritize other traffic. ezshaper->step6->battlefield2 CallOfDuty checkbox Call Of Duty (United Offensive) ezshaper->step6->callofduty Counterstrike checkbox Counterstrike. The ultimate 1st person shooter. ezshaper->step6->counterstrike DeltaForce checkbox Delta Force ezshaper->step6->deltaforce DOOM3 checkbox DOOM3 ezshaper->step6->doom3 EmpireEarth checkbox Empire Earth ezshaper->step6->empireearth Everquest checkbox Everquest - this game uses a LARGE port range, be aware that you may need to manually rearrange the resulting rules to correctly prioritize other traffic. ezshaper->step6->everquest Everquest2 checkbox Everquest II ezshaper->step6->everquest2 GunZOnline checkbox GunZ Online ezshaper->step6->gunzonline FarCry checkbox Far Cry ezshaper->step6->farcry HalfLife checkbox HalfLife ezshaper->step6->halflife HalfLife2 checkbox HalfLife 2 ezshaper->step6->halflife2 Halo2 checkbox Halo2 via Xbox live ezshaper->step6->halo2xbox Lineage2 checkbox Lineage II ezshaper->step6->lineage2 PlanetSide checkbox PlanetSide ezshaper->step6->planetside QuakeIII checkbox Quake III ezshaper->step6->quakeiii TigerWoods2004PS2 checkbox Tiger Woods 2004 for PS2 ezshaper->step6->tigerwoods2004ps2 UnrealTournament checkbox Unreal Tournament ezshaper->step6->unrealtournament WolfensteinEnemyTerritory checkbox Wolfenstein Enemy Territory ezshaper->step6->wolfet WorldOfWarcraft checkbox World of Warcraft ezshaper->step6->wow Xbox360 checkbox XBox 360 ezshaper->step6->xbox360 Next submit step6_stepsubmitphpaction(); /usr/local/www/wizards/traffic_shaper_wizard.inc 7 pfSense Traffic Shaper Wizard true Raise or lower other Applications Enable checkbox Other networking protocols This will help raise or lower the priority of other protocols higher than most traffic. AIM,AppleRemoteDesktop,DNS,HTTP,ICMP,ICQ,IMAP,IPSEC,IRC,Jabber,LotusNotes,MSN,MSRDP,MySqlServer,PCAnywhere,POP3,PPTP,RTSP,SMB,SMTP,SNMP,StreamingMP3,TeamSpeak,VNC,NNTP,CVSUP true ezshaper->step7->enable Next submit Remote Service / Terminal emulation listtopic MSRDP select ezshaper->step7->msrdp Microsoft Remote Desktop Protocol VNC ezshaper->step7->vnc select Virtual Network Computing AppleRemoteDesktop ezshaper->step7->appleremotedesktop select Apple Remote Desktop PCAnywhere ezshaper->step7->pcanywhere select Symantec PC Anywhere Messengers listtopic IRC select ezshaper->step7->irc Internet Relay Chat Jabber select ezshaper->step7->jabber Jabber instant messanger ICQ ezshaper->step7->icq select ICQ AIM ezshaper->step7->aolinstantmessenger select AOL Instant Messenger MSN ezshaper->step7->msnmessenger select MSN Messenger Teamspeak ezshaper->step7->teamspeak select TeamSpeak VPN listtopic PPTP select ezshaper->step7->pptp Microsoft Point to Point tunneling protocol IPSEC select ezshaper->step7->ipsec IPSEC VPN traffic Multimedia/Streaming listtopic StreamingMP3 select ezshaper->step7->streamingmp3 Streaming Media RTSP ezshaper->step7->rtsp select RealTime streaming protocol Web listtopic HTTP select ezshaper->step7->http HTTP and HTTPS aka Web Traffic Mail listtopic SMTP select ezshaper->step7->smtp Mail Protocol POP3 select ezshaper->step7->pop3 POP3 Protocol IMAP ezshaper->step7->imap select IMAP Protocol LotusNotes ezshaper->step7->lotusnotes select Lotus Notes Miscellaneous listtopic DNS select ezshaper->step7->dns Domain Name Services ICMP ezshaper->step7->icmp select ICMP Protocol SMB ezshaper->step7->smb select Microsoft SMB Protocol and friends SNMP ezshaper->step7->snmp select Simple Network Management Protocol MySQLServer ezshaper->step7->mysqlserver select MySQL Server NNTP ezshaper->step7->nntp select Internet News CVSUP ezshaper->step7->cvsup select CVSUP Next submit step7_stepsubmitphpaction(); /usr/local/www/wizards/traffic_shaper_wizard.inc 8 pfSense Traffic Shaper Wizard Reload profile notice listtopic After pressing Finish the system will load the new profile.<br/> Please note that this may take a moment.<br/> Also note that the traffic shaper is stateful meaning that only new connections will be shaped.<br/> If this is an issue please reset the state table after loading the profile.<br/> Finish submit step8_stepbeforeformdisplay(); step8_stepsubmitphpaction(); /usr/local/www/wizards/traffic_shaper_wizard.inc 9 pfSense Traffic Shaper Wizard Finish submit /usr/local/www/wizards/traffic_shaper_wizard.inc step9_stepsubmitphpaction();