Hi Guangming, I merged https://gerrit.fd.io/r/c/vpp/+/34768. It allows the virtual address to be added when accept mode is enabled on a VR which sends unicast advertisements.
Thanks, -Matt On Mon, Jan 3, 2022 at 10:07 PM Guangming <zhangguangm...@baicells.com> wrote: > Hi,Matt > Thanks for your detail reply. Maybe I was wrong about VRRP in VPP. > My expected behavior is that the master and backup have a virtual > ip and virtual mac. The virtual ip and mac are used to connected with > the other device. > They are removed when device switch to backup and are added when switch > to master. Or they are always exist on the two device, but only the mater > device can send and > recieve the packet which destination ip address is the virtual ip. > > The reason is i want to use unicast is remote disaster recovey > scenario , not only cloud. The other is reduce the multicast packet in LAN. > > From the code , I think the device may drop the packet which dst > address is virtual, because the virtual ip is not the second address of > the interface with your proposal configure. My vpp version is 2110.1 > Now my test environment is not ready because our lab is removal. I will > verify your configure when test environment is ready . > > I aslo found the other issue about VRRP. One is the source ethenet > address in gratuitous ARP is not the virtual MAC, so the the virtaul MAC > in switch is unkonwn unicast . > The other is the MAC is not same that master device used when it handle > the send and recieve packet. One is virtual MAC , the other is real MAC. I > think both are virtual mac is more > friendly to peer device. > > > > Thanks > Guangming > > > > > ------------------------------ > zhangguangm...@baicells.com > > *From:* Matthew Smith <mgsm...@netgate.com> > *Date:* 2022-01-04 03:02 > *To:* zhangguangm...@baicells.com > *CC:* vpp-dev <vpp-dev@lists.fd.io> > *Subject:* Re: how to config vrrp unicast mode > Hi Guangming, > > I think the signaling between unicast peers should work if you do > something like this: > > device A: > set int ip address GigabitEthernet0/14/0 10.10.10.10/24 > set int state GigabitEthernet0/14/0 up > vrrp vr add GigabitEthernet0/14/0 vr_id 1 priority 250 10.10.10.15 unicast > vrrp > peers GigabitEthernet0/14/0 vr_id 1 10.10.10.5 > vrrp proto start GigabitEthernet0/14/0 vr_id 1 > > device B: > set int ip address GigabitEthernet0/14/0 10.10.10.5/24 > set int state GigabitEthernet0/14/0 up > vrrp vr add GigabitEthernet0/14/0 vr_id 1 priority 200 10.10.10.15 unicast > vrrp peers GigabitEthernet0/14/0 vr_id 1 10.10.10.10 > vrrp proto start GigabitEthernet0/14/0 vr_id 1 > > That ought to cause your two instances to elect device A as the master. It > should send advertisements to device B while it's up. It should also reply > to ARP requests for 10.10.10.15 if it receives them, but it will reply with > a VRRP virtual MAC address, which may not be the correct behavior for a > unicast scenario. I originally added the capability to send unicast > advertisements because I thought it may be useful for cloud environments > which do not support multicast (AWS, Azure). But replying to an ARP request > with a VRRP virtual MAC address may not be valid for cloud environments. Or > it might not matter because the ARP request may be handled by > infrastructure in those cloud environments and never actually delivered to > the VM where VPP runs, I'm not sure. > > Your original commands enabled accept mode on each VR and added the VR > virtual IP address (10.10.10.10/24) on the interface where the VR was > being configured. In general, when you use accept mode, you don't need to > configure the VR virtual IP address on the interface. You should only > configure the virtual IP address on an interface of a VR that has priority > 255 (the "owner" of the virtual IP address). On VR's with priority lower > than 255, the address will automatically be added when the VR transitions > into the master state and removed when it transitions from master to > backup. I don't recall whether enabling accept mode does anything if > you're using unicast advertisements. As I mentioned, the functionality was > intended for cloud environments and in those environments, it does not work > to just add an IP address on an interface, there needs to be some outside > action taken (use AWS/Azure API to remove address from one host/interface > and add it on another). > > I have not tried to use unicast VRRP in production and I have not received > any questions about it from users before, so YMMV. If you find something > specific that is not working as expected, please let me know. > > Thanks, > -Matt > > > > On Tue, Dec 28, 2021 at 3:37 AM zhangguangm...@baicells.com < > zhangguangm...@baicells.com> wrote: > >> >> Hi Matthew >> I want to use two device that runing VPP as HA cluster. I found the vrrp >> cli support unicast mode. >> Can you give me a right vrrp unicast example ? >> >> My configure is as follow, >> device A : >> set int ip address GigabitEthernet0/14/0 10.10.10.10/24 >> set int ip address GigabitEthernet0/14/0 10.10.10.15/24 >> set int state GigabitEthernet0/14/0 up >> >> vrrp vr add GigabitEthernet0/14/0 vr_id 1 priority 250 accept_mode >> 10.10.10.15 unicast vrrp peers GigabitEthernet0/14/0 vr_id 1 10.10.10.5 >> vrrp proto start GigabitEthernet0/14/0 vr_id 1 >> >> device B: >> set int ip address GigabitEthernet0/14/0 10.10.10.5/24 >> set int ip address GigabitEthernet0/14/0 10.10.10.15/24 >> set int state GigabitEthernet0/14/0 up >> >> vrrp vr add GigabitEthernet0/14/0 vr_id 1 priority 200 accept_mode >> 10.10.10.15 unicast vrrp peers GigabitEthernet0/14/0 vr_id 1 10.10.10.10 >> vrrp proto start GigabitEthernet0/14/0 vr_id 1 >> >> >> Thanks >> Guangming >> >> >> ------------------------------ >> zhangguangm...@baicells.com >> > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20693): https://lists.fd.io/g/vpp-dev/message/20693 Mute This Topic: https://lists.fd.io/mt/87993023/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-