Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix neighbor discovering #1003

Merged

Conversation

glazychev-art
Copy link
Contributor

@glazychev-art glazychev-art commented Nov 29, 2023

Motivation

Cilium CNI plugin uses /32 for hosts addresses.
When we inject the host interface to VPP, we try to resolve the gateway MAC using ARP Request. But when we receive the ARP reply, VPP cannot handle it, because:

00:03:50:190782: af-packet-input
  af_packet: hw_if_index 1 rx-queue 0 next-index 4
    tpacket2_hdr:
      status 0x1 len 42 snaplen 42 mac 66 net 80
      sec 0x6565ca18 nsec 0xc19ad4 vlan 0 vlan_tpid 0
    vnet-hdr:
      flags 0x00 gso_type 0x00 hdr_len 0
      gso_size 0 csum_start 0 csum_offset 0
00:03:50:190793: ethernet-input
  ARP: 22:88:cd:e1:98:ba -> 82:9f:51:46:12:92
00:03:50:190800: arp-input
  reply, type ethernet/IP4, address size 6/4
  22:88:cd:e1:98:ba/10.244.2.250 -> 82:9f:51:46:12:92/10.244.2.154
00:03:50:190803: arp-reply
  reply, type ethernet/IP4, address size 6/4
  22:88:cd:e1:98:ba/10.244.2.250 -> 82:9f:51:46:12:92/10.244.2.154
00:03:50:190812: error-drop
  rx:host-eth0
00:03:50:190813: drop
  arp-reply: IP4 source address not local to subnet

Solution:
Resolve the gateway MAC address before we inject the AF_PACKET host interface to VPP

Issue:
networkservicemesh/deployments-k8s#10581

Signed-off-by: Artem Glazychev <artem.glazychev@xored.com>
@glazychev-art glazychev-art marked this pull request as ready for review December 5, 2023 05:21
@denis-tingaikin denis-tingaikin merged commit 8b00b04 into networkservicemesh:main Dec 25, 2023
12 checks passed
nsmbot pushed a commit to networkservicemesh/deployments-k8s that referenced this pull request Dec 25, 2023
…d-forwarder-vpp@main

PR link: networkservicemesh/cmd-forwarder-vpp#1003

Commit: 8b00b04
Author: Artem Glazychev
Date: 2023-12-26 00:03:25 +0700
Message:
  - Fix neighbor discovering (#1003)
Signed-off-by: NSMBot <nsmbot@networkservicmesh.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants