1 |
ac24dc24
|
Renato Botelho
|
/*
|
2 |
|
|
* enablecarp
|
3 |
|
|
*
|
4 |
|
|
* part of pfSense (https://www.pfsense.org)
|
5 |
b8f91b7c
|
Luiz Souza
|
* Copyright (c) 2016-2018 Rubicon Communications, LLC (Netgate)
|
6 |
ac24dc24
|
Renato Botelho
|
* All rights reserved.
|
7 |
|
|
*
|
8 |
b12ea3fb
|
Renato Botelho
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
9 |
|
|
* you may not use this file except in compliance with the License.
|
10 |
|
|
* You may obtain a copy of the License at
|
11 |
ac24dc24
|
Renato Botelho
|
*
|
12 |
b12ea3fb
|
Renato Botelho
|
* http://www.apache.org/licenses/LICENSE-2.0
|
13 |
ac24dc24
|
Renato Botelho
|
*
|
14 |
b12ea3fb
|
Renato Botelho
|
* Unless required by applicable law or agreed to in writing, software
|
15 |
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
16 |
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
17 |
|
|
* See the License for the specific language governing permissions and
|
18 |
|
|
* limitations under the License.
|
19 |
ac24dc24
|
Renato Botelho
|
*/
|
20 |
|
|
|
21 |
c6e83f5e
|
jim-p
|
! echo "Enabling CARP..."
|
22 |
|
|
require_once("config.inc");
|
23 |
|
|
require_once("interfaces.inc");
|
24 |
|
|
require_once("util.inc");
|
25 |
|
|
|
26 |
1bfcf6f1
|
Phil Davis
|
if (is_array($config['virtualip']['vip'])) {
|
27 |
c6e83f5e
|
jim-p
|
$viparr = &$config['virtualip']['vip'];
|
28 |
|
|
foreach ($viparr as $vip) {
|
29 |
|
|
switch ($vip['mode']) {
|
30 |
1bfcf6f1
|
Phil Davis
|
case "carp":
|
31 |
|
|
interface_carp_configure($vip);
|
32 |
|
|
sleep(1);
|
33 |
|
|
break;
|
34 |
|
|
case "ipalias":
|
35 |
|
|
if (strpos($vip['interface'], '_vip')) {
|
36 |
|
|
interface_ipalias_configure($vip);
|
37 |
|
|
}
|
38 |
|
|
break;
|
39 |
c6e83f5e
|
jim-p
|
}
|
40 |
|
|
}
|
41 |
|
|
}
|
42 |
8ff85c39
|
Ermal
|
interfaces_sync_setup();
|
43 |
971de1f9
|
Renato Botelho
|
set_single_sysctl("net.inet.carp.allow", "1");
|