all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>,
	"DERUMIER, Alexandre" <Alexandre.DERUMIER@groupe-cyllene.com>,
	"aderumier@odiso.com" <aderumier@odiso.com>
Subject: Re: [pve-devel] [PATCH pve-cluster] sysctl: disable net.ipv4.igmp_link_local_mcast_reports
Date: Tue, 9 Nov 2021 17:15:17 +0100	[thread overview]
Message-ID: <46238588-9bd7-94e8-bf54-abe9d782f625@proxmox.com> (raw)
In-Reply-To: <d287fefb29cdf7bc1ecafb04582d25e06a9ec401.camel@groupe-cyllene.com>

On 09.11.21 16:52, DERUMIER, Alexandre wrote:
> This is really specific to local-link multicast, and it's should only
> be use for some specific routing protocol
> 
> https://yhbt.net/lore/all/1439396033-6264-1-git-send-email-pdowney@brocade.com/T/
> https://www.omnisecu.com/tcpip/ipv4-link-local-multicast-addresses.php
> 
> So, I'll not break multicast services inside the vm.
> 
> Maybe if hypervisor use ospf routing protocol, but anyway, we don't
> have any infos about true vm ip/mac on fwbr bridges.

hmm, ack thx for the info, so the sysctl can be fine.

> actually corretly activate the fwbr bridge before plugging to vmbr,
> 
> my $create_firewall_bridge_linux = sub {
>   ...
>   &$cond_create_bridge($fwbr);
>   &$activate_interface($fwbr);
>   copy_bridge_config($bridge, $fwbr);
>   veth_create($vethfw, $vethfwpeer, $bridge);
> 
>   &$bridge_add_interface($fwbr, $vethfw);
>   &$bridge_add_interface($bridge, $vethfwpeer, $tag, $trunks);
>   &$bridge_add_interface($fwbr, $iface);
> };
> 
> but it seem that igmp is sent some millisecond later
> 
> A simple sleep like,
> 
>   &$cond_create_bridge($fwbr);
>   &$activate_interface($fwbr);
>   sleep(1);
>   &$bridge_add_interface($fwbr, $vethfw);
> 
> and the igmp report from fwbr is not going to vmbr.
> (but, maybe this is more ugly than a sysctl knob)
> 

yeah such sleeps are ugly and still racy, we could poll for the fwbr to be up?

E.g., something like:

my $round = 0;
while (1) {
   last if PVE::Tools::file_read_firstline("/sys/class/net/$fwbr/operstate") =~ "up";
   die "timeout on waiting for $fwbr to become ready\n" if ++$round > 100;
   usleep(10 * 1000); # 100 * 10ms = 1s
}

(did not test it)

>> Should it be an FW option?
> 
> It could be.
> 
> but it need to be persistant at firewall service stop, as when we
> shutdown the server, igmp report could be emit on vm/ct shutdown.
> and at boot, it should be enabled before the vm auto-start
> 
> Personnaly, I think it should be disabled by default, with an knob to
> enable it.
> , as a majority of basic users don't known what it is. (And advanced
> users using routing protocol, should be aware of this option).


ah yea, with default on I meant that the sysctl would be default on (so the local
mcast reporting default off), sorry for the confusion.
We wouldn't need a actual config knob either as an admin that depends on this can
just configure a higher-priority sysctl.d file..




  reply	other threads:[~2021-11-09 16:15 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-06  8:32 Alexandre Derumier
2021-11-05 13:20 ` Thomas Lamprecht
2021-11-09 15:52   ` DERUMIER, Alexandre
2021-11-09 16:15     ` Thomas Lamprecht [this message]
2021-11-11 16:18 ` [pve-devel] applied: " Thomas Lamprecht

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=46238588-9bd7-94e8-bf54-abe9d782f625@proxmox.com \
    --to=t.lamprecht@proxmox.com \
    --cc=Alexandre.DERUMIER@groupe-cyllene.com \
    --cc=aderumier@odiso.com \
    --cc=pve-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal