kern/117000: [carp] CARP using address-less host NIC (carpdev)
SBrickey.Net - Me
Me at sbrickey.net
Sun Oct 7 19:20:09 PDT 2007
The following reply was made to PR kern/117000; it has been noted by GNATS.
From: "SBrickey.Net - Me" <Me at sbrickey.net>
To: <bug-followup at FreeBSD.org>,
"SBrickey.Net - Me" <Me at sbrickey.net>
Cc:
Subject: Re: kern/117000: [carp] CARP using address-less host NIC (carpdev)
Date: Sun, 7 Oct 2007 22:04:43 -0400
This is a multi-part message in MIME format.
------_=_NextPart_001_01C8094F.97A79F3F
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Remko,
=20
Apologies... CARP is a redundancy protocol in which (one or) multiple
host computers participate in listening and responding from a virtual IP
(similar to an alias, but the IP and its traffic is shared/split among
the host computers)... allows for some REALLY redundant router
configurations.
=20
The issue is that when CARP first came out (from OpenBSD), the virtual
IP was created based on the IP/subnets of the hosts' physical NICs... so
the virtual IP had to be within the network/subnet of the host NIC...
From what little analysis I performed, it seemed that traffic would be
transmitted with a source address of the host NIC (it would "listen" on
the CARP address, but respond from the host NIC)... this requires that
an address space of Host+CARP addresses be available on the desired
network...
This means that for small addresses (say single static IP's as are
common in the small business sector), CARP is not an option as the
networks are too "small" (few IP's) for the ISP's gateway to acknowledge
the hosts.
=20
This is what was ported to FBSD...
=20
In the meantime, the OpenBSD team has responded to this by adding a
"carpdev" option to the interface which allows specifying the interface
directly without referencing IP/subnet range... this allows the host NIC
to remain IP-less, while supporting the virtual IP... allowing for CARP
to function in limited environments such as single IP addresses.
=20
This update would be WONDERFUL to have in the FBSD port.
If further clarification is necessary please feel free to say so.
=20
Thanks,
-Scott
------_=_NextPart_001_01C8094F.97A79F3F
Content-Type: text/html;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii">
<meta name=3DGenerator content=3D"Microsoft Word 12 (filtered medium)">
<style>
<!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri","sans-serif";
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.Section1
{page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3DEN-US link=3Dblue vlink=3Dpurple>
<div class=3DSection1>
<p class=3DMsoNormal>Remko,<o:p></o:p></p>
<p class=3DMsoNormal><o:p> </o:p></p>
<p class=3DMsoNormal>Apologies… CARP is a redundancy protocol in =
which (one
or) multiple host computers participate in listening and responding from =
a
virtual IP (similar to an alias, but the IP and its traffic is =
shared/split among
the host computers)… allows for some REALLY redundant router
configurations.<o:p></o:p></p>
<p class=3DMsoNormal><o:p> </o:p></p>
<p class=3DMsoNormal>The issue is that when CARP first came out (from =
OpenBSD),
the virtual IP was created based on the IP/subnets of the hosts’ =
physical
NICs… so the virtual IP had to be within the network/subnet of the =
host
NIC… From what little analysis I performed, it seemed that traffic =
would
be transmitted with a source address of the host NIC (it would =
“listen”
on the CARP address, but respond from the host NIC)… this requires =
that an
address space of Host+CARP addresses be available on the desired =
network…<o:p></o:p></p>
<p class=3DMsoNormal>This means that for small addresses (say single =
static IP’s
as are common in the small business sector), CARP is not an option as =
the
networks are too “small” (few IP’s) for the =
ISP’s
gateway to acknowledge the hosts.<o:p></o:p></p>
<p class=3DMsoNormal><o:p> </o:p></p>
<p class=3DMsoNormal>This is what was ported to =
FBSD…<o:p></o:p></p>
<p class=3DMsoNormal><o:p> </o:p></p>
<p class=3DMsoNormal>In the meantime, the OpenBSD team has responded to =
this
by adding a “carpdev” option to the interface which allows
specifying the interface directly without referencing IP/subnet =
range…
this allows the host NIC to remain IP-less, while supporting the virtual =
IP…
allowing for CARP to function in limited environments such as single IP
addresses.<o:p></o:p></p>
<p class=3DMsoNormal><o:p> </o:p></p>
<p class=3DMsoNormal>This update would be WONDERFUL to have in the FBSD =
port.<o:p></o:p></p>
<p class=3DMsoNormal>If further clarification is necessary please feel =
free to
say so.<o:p></o:p></p>
<p class=3DMsoNormal><o:p> </o:p></p>
<p class=3DMsoNormal>Thanks,<o:p></o:p></p>
<p class=3DMsoNormal>-Scott<o:p></o:p></p>
</div>
</body>
</html>
------_=_NextPart_001_01C8094F.97A79F3F--
More information about the freebsd-bugs
mailing list