From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <s.lendl@proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by lists.proxmox.com (Postfix) with ESMTPS id 4F2E19DA05
 for <pve-devel@lists.proxmox.com>; Fri, 27 Oct 2023 13:30:08 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
 by firstgate.proxmox.com (Proxmox) with ESMTP id 31C3538B56
 for <pve-devel@lists.proxmox.com>; Fri, 27 Oct 2023 13:30:08 +0200 (CEST)
Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com
 [94.136.29.106])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by firstgate.proxmox.com (Proxmox) with ESMTPS
 for <pve-devel@lists.proxmox.com>; Fri, 27 Oct 2023 13:30:07 +0200 (CEST)
Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1])
 by proxmox-new.maurer-it.com (Proxmox) with ESMTP id C964842546;
 Fri, 27 Oct 2023 13:30:06 +0200 (CEST)
From: Stefan Lendl <s.lendl@proxmox.com>
To: pve-devel@lists.proxmox.com
Date: Fri, 27 Oct 2023 13:29:54 +0200
Message-ID: <20231027113000.2008166-1-s.lendl@proxmox.com>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <87v8axbjh1.fsf@gmail.com>
References: <87v8axbjh1.fsf@gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-SPAM-LEVEL: Spam detection results:  0
 AWL 0.077 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DMARC_MISSING             0.1 Missing DMARC policy
 KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_PASS               -0.001 SPF: sender matches SPF record
Subject: [pve-devel] [RFC SDN DHCP] Add and Remove DHCP mappings on vNIC
 add/remove
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
X-List-Received-Date: Fri, 27 Oct 2023 11:30:08 -0000

Sorry, Sending this again because I noticed that I messed up the subject
prefixes for the patches.



This patch series defines IPs, once allocated by the IPAM as persistant
until the vNIC is removed from the VM or the VM is destroyed.

The dnsmasq ethers file is a pure product of the IPAM database and does
not have it's own state, therefore removing the potential issue of wrong
sync state between IPAM and dnsmasq.
Updating the ethers file is only done on the effected node.

Technically, starting the VM still adds the DHCP mapping. This is needed
at the moment because during migration, this triggers generating the
ethers file on the target node.  If the IPAM already contains the
mapping, it returns the existing IP (upsert)

Alternative approach would be to trigger an update of the ethers file on
all nodes on IPAM update.

Stopping a guest does not effect IPAM/DHCP.

Destroying a guest removes the associated IPs from the IPAM.

--