Date: Mon, 8 Aug 2022 14:56:29 +0200 From: Ondra Knezour <knezour@weboutsourcing.cz> To: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= <roger.pau@citrix.com> Cc: freebsd-xen@freebsd.org, dinoex@FreeBSD.org Subject: Re: Better network reporting from FreeBSD VM via xenstore Message-ID: <8f0643c5-22b3-c1cf-a7f2-86cada663bc9@weboutsourcing.cz> In-Reply-To: <YvEBZGy6wDDtQ2Ol@Air-de-Roger> References: <eac38924-3e62-ae7e-ebb1-882cc629aa20@weboutsourcing.cz> <YvEBZGy6wDDtQ2Ol@Air-de-Roger>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] Dne 08.08.2022 v 14:30 Roger Pau Monné napsal(a): > On Fri, Aug 05, 2022 at 03:43:55PM +0200, Ondra Knezour wrote: >> Hello all, >> >> it seems to me that there is some room to improve how are things about >> networking reported from FreeBSD VM to the hypervisor. >> >> Now we have function xe_ip_if() in /usr/local/sbin/xe-update-guest-attrs >> which just grep for xn interfaces, read one IP address for each which is >> eventually written to the /var/cache/xenstore/attr/ethNUMBER/ip >> >> First - from where the ip node comes? I didn't find any such in >> https://xenbits.xen.org/docs/unstable/misc/xenstore-paths.html > I think this is all specific to XenServer (a.k.a. Citrix Hypervisor) > and XCP (as being part of the xe-guest-utilities package), but not > used by upstream Xen toolstack (xl), and no one cared to add the used > paths to the upstream documents. > >> We have >> >> [ snip } >> But on Linux >> [ snip ] >> >> You seem to use different commands on FreeBSD and Linux to get the >> entries (`xenstore ls attr` vs `xenstore ls | grep attr -A 50`), so >> it's not really a fair comparison I would say. Only for brevity. There are all entries form FreeBSD guest and only couple relevant from Linux guest, so even if not fair, still favourable for "us" :) >> And secondly - I have multiple interfaces in VM, renamed by VLANs their are >> connected to. Some of them have multiple IPv4 addresses. Some also have IPv6 >> address(es). Bummer, I don't see any of this in pool management. And I >> wouldn't even without interface renames, because we report only one IPv4 >> address. First problem may be solved with some creative work with >> /etc/rc.conf, for example using result of following command in adition to >> simple ifconfig | grep xn >> >> sysrc -a | grep -E "ifconfig_xn[[:digit:]]_name" >> ifconfig_xn0_name: vlan1000 >> ifconfig_xn1_name: vlan1001 >> ifconfig_xn2_name: vlan2000 >> >> or list all ethernet interfaces (ifconfig -l ether) and look for >> ifconfig_xnX_name line for each not(xn). But regarding other missing >> info/nodes, I just don't know. May someone please enlighten me what is >> missing on our side? > I've added dinoex as he is the maintainer of the xe-guest-utilities > package, maybe he has some ideas about how this can be solved. > > You might also want to raise a ticket with the XCP-ng guys [0] about > this, they usually care about OSes not officially supported by > XenServer. > > Thanks, Roger. > > [0] https://github.com/xcp-ng/xcp/issues I just started experimenting and it seems like I am lucky. xenstore-write attr/vif/1/ipv4/0 '11.10.10.10' xenstore-write attr/vif/0/ipv4/1 '22.10.10.10' Only one ovious difference between this and Linux output from previous message is indexing from 0, but after this write I can see both address in both XCP-ng Center and Xen Orchestra. So my question changes to are we willing to add support for multiple IPv4 addresses, IPv6 addresses and renamed interfaces to xe-guest-utilities? dinoex@? :) -- Best regards Ondra Knezour [-- Attachment #2 --] 0 *H 010 `He 0 *H 000 *H 0e10 UCZ10UaNTRCZ-4711498310U Česká pošta, s.p.10UPostSignum Root QCA 40 180927073923Z 330927073923Z0i10 UCZ10UaNTRCZ-4711498310U Česká pošta, s.p.1"0 UPostSignum Qualified CA 40"0 *H 0 rm2v<b MR.`sE4JWN7$>]x i䃊O`R:4u¦[DcaH(0h,r;\xֽ*UFWnV'CԬ۩`R- %#v../|۴[/^̇3jEEק.5_QDFk7;X:I[/&zؐjhN=HFAri 8hqiIŧl[NIFFb60&6S1oY߶? $:.f.fZ:/U$w -JrqEGH/Do䃁_Tˏ ?Cr&P/fM'^H*._w\df^)iy,Zp1Tw Ԓ|2ɸ{D;r!)pu`?#u?Rd>D d0`0U 00U 00+0Tento certifikat pro elektronickou pecet byl vydan v souladu s narizenim EU c. 910/2014.This is a certificate for electronic seal according to Regulation (EU) No 910/2014.0U0 0z+n0l07+0+http://crt.postsignum.cz/crt/psrootqca4.crt01+0%http://ocsp.postsignum.cz/OCSP/RQCA4/0U0U#06ipQ5O?P~&) 0U001/-+
