RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1333513 - backport multicast: Extend ip address command to enable multicast group join/leave on
Summary: backport multicast: Extend ip address command to enable multicast group join/...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: iproute
Version: 7.3
Hardware: Unspecified
OS: Unspecified
high
medium
Target Milestone: rc
: ---
Assignee: Phil Sutter
QA Contact: Jaroslav Aster
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-05-05 17:20 UTC by Eric Garver
Modified: 2016-11-03 23:39 UTC (History)
4 users (show)

Fixed In Version: iproute-3.10.0-69.el7
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-11-03 23:39:07 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2016:2162 0 normal SHIPPED_LIVE iproute bug fix and enhancement update 2016-11-03 13:14:33 UTC

Description Eric Garver 2016-05-05 17:20:14 UTC
Description of problem:

Userland portion of BZ-1267398.
https://bugzilla.redhat.com/show_bug.cgi?id=1267398

backport multicast: Extend ip address command to enable multicast group join/leave on

to 7.3

"ip: enable configuring multicast group autojoin"
http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/commit/?id=e31867ac30cf95155d113bbfaedf6b99f98a677f


Joining multicast group on ethernet level via "ip maddr" command would
not work if we have an Ethernet switch that does igmp snooping since
the switch would not replicate multicast packets on ports that did not
have IGMP reports for the multicast addresses.

Linux vxlan interfaces created via "ip link add vxlan" have the group option
that enables then to do the required join.

By extending ip address command with option "autojoin" we can get similar
functionality for openvswitch vxlan interfaces as well as other tunneling
mechanisms that need to receive multicast traffic. The kernel code is
structured similar to how the vxlan driver does a group join / leave.

Comment 1 Phil Sutter 2016-05-10 13:18:59 UTC
The following commit from upstream needs to be backported:

commit e31867ac30cf95155d113bbfaedf6b99f98a677f
Author: Madhu Challa <challa>
Date:   Wed Mar 4 10:30:10 2015 -0800

    ip: enable configuring multicast group autojoin
    
    Joining multicast group on ethernet level via "ip maddr" command would
    not work if we have an Ethernet switch that does igmp snooping since
    the switch would not replicate multicast packets on ports that did not
    have IGMP reports for the multicast addresses.
    
    Linux vxlan interfaces created via "ip link add vxlan" have the group option
    that enables then to do the required join.
    
    By extending ip address command with option "autojoin" we can get similar
    functionality for openvswitch vxlan interfaces as well as other tunneling
    mechanisms that need to receive multicast traffic.
    
    example:
    ip address add 224.1.1.10/24 dev eth5 autojoin
    ip address del 224.1.1.10/24 dev eth5


Backport will probably be trivial.

Comment 6 Jaroslav Aster 2016-06-22 15:19:50 UTC
Hi Phil,

there is no mention about new option in ip-address man page. Could you please fix it? Thanks. Changing the state to assigned.

Could anyone confirm, that it works on ipv6? I tried to assign ipv6 multicast address to interface, but it failed, but I probably did something wrong :-).

# ip -6 a add ff01::101 dev enp3s0f0 autojoin
RTNETLINK answers: Cannot assign requested address

Comment 7 Eric Garver 2016-06-22 18:43:16 UTC
Jaroslav,

You can't add an IPv6 multicast address to an interface. The kernel will always return an error to iproute utils. However, the kernel will still generate a MLD report for the IPv6 multicast address.

Examples for both IPv4 and IPv6 with TCP dumps
---

# ipaddr add 224.1.1.5 dev ens3 autojoin

# ip -6 addr add ff02::1234:5678 dev ens3 autojoi
RTNETLINK answers: Cannot assign requested addres


14:37:28.629705 IP localhost.localdomain > 224.0.0.22: igmp v3 report, 1 group record(s)
    0x0000:  46c0 0028 0000 4000 0102 f7ea 0a00 020f
    0x0010:  e000 0016 9404 0000 2200 f8f7 0000 0001
    0x0020:  0400 0000 e001 0105

14:37:31.042768 IP6 localhost.localdomain > ff02::16: HBH ICMP6, multicast listener report v2, 6 group record(s), length 12
    0x0000:  6000 0000 0088 0001 fe80 0000 0000 0000
    0x0010:  5054 00ff fe12 3456 ff02 0000 0000 0000
    0x0020:  0000 0000 0000 0016 3a00 0502 0000 0100
    0x0030:  8f00 43ae 0000 0006 0300 0000 ff02 0000
    0x0040:  0000 0000 0000 0000 1234 5678 0400 0000
    0x0050:  ff02 0000 0000 0000 0000 0001 ff03 0004
    0x0060:  0400 0000 ff02 0000 0000 0000 0000 0001
    0x0070:  ff00 0000 0400 0000 ff05 0000 0000 0000
    0x0080:  0000 0000 0000 0002 0400 0000 ff02 0000
    0x0090:  0000 0000 0000 0000 0000 0002 0400 0000
    0x00a0:  ff02 0000 0000 0000 0000 0001 ff12 3456

Comment 8 Phil Sutter 2016-07-12 07:59:31 UTC
Documentation patch sent upstream, awaiting acceptance: https://www.mail-archive.com/netdev@vger.kernel.org/msg119052.html

Comment 11 errata-xmlrpc 2016-11-03 23:39:07 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2016-2162.html


Note You need to log in before you can comment on or make changes to this bug.