diff options
author | Scott Ullrich <sullrich@pfsense.org> | 2005-01-13 19:57:36 +0000 |
---|---|---|
committer | Scott Ullrich <sullrich@pfsense.org> | 2005-01-13 19:57:36 +0000 |
commit | 08dd5f097bde6b584d78983db32af9285fe5fa82 (patch) | |
tree | 43f02d020ba7a4d79ea21bbe3bdef0d1b7d06f9e /packages | |
parent | a401b050a97d325eb6aa12e92ddfeb18b33c3833 (diff) | |
download | pfsense-packages-08dd5f097bde6b584d78983db32af9285fe5fa82.tar.gz pfsense-packages-08dd5f097bde6b584d78983db32af9285fe5fa82.tar.bz2 pfsense-packages-08dd5f097bde6b584d78983db32af9285fe5fa82.zip |
Add initial carp implementation to test GUI. Still needs backend logic to setup the GUI portion
Diffstat (limited to 'packages')
-rw-r--r-- | packages/carp.xml | 162 |
1 files changed, 162 insertions, 0 deletions
diff --git a/packages/carp.xml b/packages/carp.xml new file mode 100644 index 00000000..353fffc1 --- /dev/null +++ b/packages/carp.xml @@ -0,0 +1,162 @@ +<?xml version="1.0" encoding="utf-8" ?> +<packagegui> + <name>carp</name> + <!-- Menu is where this packages menu will appear --> + <menu> + <name>CARP Settings</name> + <tooltiptext>CARP is a tool to help achieve system redundancy, by having multiple computers creating a single, virtual network interface between them, so that if any machine fails, another can respond instead, and/or allowing a degree of load sharing between systems. CARP is an improvement over the Virtual Router Redundancy Protocol (VRRP) standard. It was developed after VRRP was deemed to be not free enough because of a possibly-overlapping Cisco patent.</tooltiptext> + <section>Services</section> + <configfile>pfstat.xml</configfile> + </menu> + <!-- configpath gets expanded out automatically and config items will be + stored in that location --> + <configpath>['carp']</configpath> + <adddeleteeditpagefields> + <columnitem> + <fielddescr>VHID Group</fielddescr> + <fieldname>vhid</fieldname> + </columnitem> + <columnitem> + <fielddescr>Virtual IP Address</fielddescr> + <fieldname>ipaddress</fieldname> + </columnitem> + <columnitem> + <fielddescr>Advertising Frequency</fielddescr> + <fieldname>advskew</fieldname> + </columnitem> + <columnitem> + <fielddescr>Synchronize State</fielddescr> + <fieldname>pfsync</fieldname> + </columnitem> + <columnitem> + <fielddescr>Load Balancing</fielddescr> + <fieldname>balancing</fieldname> + </columnitem> + <columnitem> + <fielddescr>Premption</fielddescr> + <fieldname>premption</fieldname> + </columnitem> + </adddeleteeditpagefields> + <!-- fields gets invoked when the user adds or edits a item. the following items + will be parsed and rendered for the user as a gui with input, and selectboxes. --> + <fields> + <field> + <fielddescr>VHID Group</fielddescr> + <fieldname>vhid</fieldname> + <description>Enter the VHID group that the machines will share</description> + <type>select</type> + <value>1</value> + <options> + <option><value>1</value><name>1 (DEAFULT)</name></option> + <option><value>2</value><name>2</name></option> + <option><value>3</value><name>3</name></option> + <option><value>4</value><name>4</name></option> + <option><value>5</value><name>5</name></option> + <option><value>6</value><name>6</name></option> + <option><value>7</value><name>7</name></option> + <option><value>8</value><name>8</name></option> + <option><value>9</value><name>9</name></option> + <option><value>10</value><name>10</name></option> + <option><value>11</value><name>11</name></option> + <option><value>12</value><name>12</name></option> + <option><value>13</value><name>13</name></option> + <option><value>14</value><name>14</name></option> + <option><value>15</value><name>15</name></option> + <option><value>16</value><name>16</name></option> + <option><value>17</value><name>17</name></option> + <option><value>18</value><name>18</name></option> + <option><value>19</value><name>19</name></option> + <option><value>20</value><name>20</name></option> + <option><value>21</value><name>21</name></option> + <option><value>22</value><name>22</name></option> + <option><value>23</value><name>23</name></option> + <option><value>24</value><name>24</name></option> + <option><value>25</value><name>25</name></option> + <option><value>26</value><name>26</name></option> + <option><value>27</value><name>27</name></option> + <option><value>28</value><name>28</name></option> + <option><value>29</value><name>29</name></option> + <option><value>30</value><name>30</name></option> + </options> + </field> + <field> + <fielddescr>Virtual IP Address</fielddescr> + <fieldname>ipaddress</fieldname> + <description>Enter the IPAddress that you would like to share on both machines</description> + <type>input</type> + </field> + <field> + <fielddescr>Advertising Frequency</fielddescr> + <fieldname>advskew</fieldname> + <description>The frequency that this machine will advertise</description> + <type>select</type> + <value>0</value> + <options> + <option><value>0</value><name>0 (DEFAULT)</name></option> + <option><value>1</value><name>1</name></option> + <option><value>2</value><name>2</name></option> + <option><value>3</value><name>3</name></option> + <option><value>4</value><name>4</name></option> + <option><value>5</value><name>5</name></option> + <option><value>6</value><name>6</name></option> + <option><value>7</value><name>7</name></option> + <option><value>8</value><name>8</name></option> + <option><value>9</value><name>9</name></option> + <option><value>10</value><name>10</name></option> + <option><value>11</value><name>11</name></option> + <option><value>12</value><name>12</name></option> + <option><value>13</value><name>13</name></option> + <option><value>14</value><name>14</name></option> + <option><value>15</value><name>15</name></option> + <option><value>16</value><name>16</name></option> + <option><value>17</value><name>17</name></option> + <option><value>18</value><name>18</name></option> + <option><value>19</value><name>19</name></option> + <option><value>20</value><name>20</name></option> + <option><value>21</value><name>21</name></option> + <option><value>22</value><name>22</name></option> + <option><value>23</value><name>23</name></option> + <option><value>24</value><name>24</name></option> + <option><value>25</value><name>25</name></option> + <option><value>26</value><name>26</name></option> + <option><value>27</value><name>27</name></option> + <option><value>28</value><name>28</name></option> + <option><value>29</value><name>29</name></option> + <option><value>30</value><name>30</name></option> + </options> + </field> + <field> + <fielddescr>Synchrnoize State</fielddescr> + <fieldname>pfsync</fieldname> + <description>PFSync transfers state insertion, update, and deletion messages between firewalls. Each firewall sends these messages out via multicast on a specified interface, using the PFSYNC protocol (IP Protocol 240). It also listens on that interface for similar messages from other firewalls, and imports them into the local state table.</description> + <type>checkbox</type> + </field> + <field> + <fielddescr>Load Balancing</fielddescr> + <fieldname>balancing</fieldname> + <description>If this feature is enabled, CARP source-hashes the originating IP of a request. The hash is then used to select a virtual host from the available pool to handle the request. This is disabled by default.</description> + <type>checkbox</type> + </field> + <field> + <fielddescr>Premption</fielddescr> + <fieldname>premption</fieldname> + <description>When preemption is enabled, each CARP host will look at the advskew (Advertising Frequency) parameter in the advertisements it receives from the master, to try to determine whether it can advertise more frequently. If so, it will begin advertising, and the current master, seeing that there is another host with a lower advskew, will bow out.</description> + <type>checkbox</type> + </field> + </fields> + <custom_php_command_before_form> + function sync_package() { + global $config; + /* create /usr/local/etc/rc.d/carp.sh here */ + + } + sync_package(); + </custom_php_command_before_form> + <custom_php_resync_config_command> + sync_package(); + </custom_php_resync_config_command> + <custom_php_install_command> + </custom_php_install_command> + <custom_php_deinstall_command> + </custom_php_deinstall_command> +</packagegui> |