Received: by 2002:a05:6358:9144:b0:117:f937:c515 with SMTP id r4csp7124178rwr; Wed, 10 May 2023 04:22:21 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4vuNLZdWaQ8mFOs9e0QNGvzK9xwXN1b8HLGQJicc14/15lItgNW1aTcIEgJFC1sAtNfP/1 X-Received: by 2002:a05:6a00:1346:b0:63b:4313:f8b5 with SMTP id k6-20020a056a00134600b0063b4313f8b5mr21541718pfu.23.1683717741279; Wed, 10 May 2023 04:22:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1683717741; cv=none; d=google.com; s=arc-20160816; b=bjhJJADsMe3LGH0a8yL3C0JfkTfV0TYmayJsjfJ5D5EGM1po0DTkR/AhROC60WxD45 j7rbmBlV5l+cG/l9MLHuFljvDN82yOqfHiMIDx13mkimszLwlXOagoseBxHiJuTQFQ+Y AP49tNSAmKGNXY43wqXjqWSwN5SLCXS0wz6tCB0MDmyPDIlAqSy/W8gdHpUhkgRV8nAT spnwR0BLMhTNE1Rm13qVRkEGbwojGAD+f1n2mxbE1OUiNAGzwwfRH0EtlkwShzwLaAb9 l/djEv0WYVxBFPsYKc1hGqOx5CCcF5yk1UJJneDXpD06YaA7RjMwKQ0/H78ucILWSXns Qh+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=zgbjjfUwv2+iyohz/z5TI8pXzmRZsNTh8PzB3OGpc0E=; b=Oo5gJfc7LEIair0+qammIlPtq3s+SQ7bKl8IXonRPlT/p3wQ3B1zji9KVppngIbPLk IURb5rMp4/eWmoihbWOh6YuwhhmpSaf5SDdg8++pxuwnB9USC6SHOn2FGJEYsC4aeUQu Yr6YdWPswjrLNY7dcYjfSuEaNuJ84tGeZpG50C8dI1d/AqKCs4RlAibhqWprXxQQzMvh 3Cbl4kQFnH4ARMvuJ4Jfi5S7p/z/ApWgJMgYbe5ZPCF9r6nOuQmmcj3P+DAcSXeMbhMe dGVjvGEWm8ZIoM0h67reJAwoCxbqLRVVJfDIXCuFamAkvhKefVBx/wql+ljEkxeiN/P0 BOug== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=uniroma2.it Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id b123-20020a62cf81000000b00643b9afbb97si4826396pfg.56.2023.05.10.04.22.06; Wed, 10 May 2023 04:22:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=uniroma2.it Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236621AbjEJLR4 (ORCPT + 99 others); Wed, 10 May 2023 07:17:56 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42798 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229656AbjEJLRz (ORCPT ); Wed, 10 May 2023 07:17:55 -0400 Received: from smtp.uniroma2.it (smtp.uniroma2.it [160.80.6.22]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1490DAB; Wed, 10 May 2023 04:17:52 -0700 (PDT) Received: from localhost.localdomain ([160.80.103.126]) by smtp-2015.uniroma2.it (8.14.4/8.14.4/Debian-8) with ESMTP id 34ABHOin003525 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Wed, 10 May 2023 13:17:25 +0200 From: Andrea Mayer To: "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , David Ahern , Shuah Khan , linux-kernel@vger.kernel.org, netdev@vger.kernel.org, linux-kselftest@vger.kernel.org Cc: Stefano Salsano , Paolo Lungaroni , Ahmed Abdelsalam , Hangbin Liu , Andrea Mayer Subject: [net 2/2] selftets: seg6: disable rp_filter by default in srv6_end_dt4_l3vpn_test Date: Wed, 10 May 2023 13:16:38 +0200 Message-Id: <20230510111638.12408-3-andrea.mayer@uniroma2.it> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20230510111638.12408-1-andrea.mayer@uniroma2.it> References: <20230510111638.12408-1-andrea.mayer@uniroma2.it> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Virus-Scanned: clamav-milter 0.100.0 at smtp-2015 X-Virus-Status: Clean X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On some distributions, the rp_filter is automatically set (=1) by default on a netdev basis (also on VRFs). In an SRv6 End.DT4 behavior, decapsulated IPv4 packets are routed using the table associated with the VRF bound to that tunnel. During lookup operations, the rp_filter can lead to packet loss when activated on the VRF. Therefore, we chose to make this selftest more robust by explicitly disabling the rp_filter during tests (as it is automatically set by some Linux distributions). Fixes: 2195444e09b4 ("selftests: add selftest for the SRv6 End.DT4 behavior") Reported-by: Hangbin Liu Signed-off-by: Andrea Mayer Tested-by: Hangbin Liu --- .../testing/selftests/net/srv6_end_dt4_l3vpn_test.sh | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/tools/testing/selftests/net/srv6_end_dt4_l3vpn_test.sh b/tools/testing/selftests/net/srv6_end_dt4_l3vpn_test.sh index 37f08d582d2f..f96282362811 100755 --- a/tools/testing/selftests/net/srv6_end_dt4_l3vpn_test.sh +++ b/tools/testing/selftests/net/srv6_end_dt4_l3vpn_test.sh @@ -258,6 +258,12 @@ setup_hs() # set the networking for the host ip netns add ${hsname} + + # disable the rp_filter otherwise the kernel gets confused about how + # to route decap ipv4 packets. + ip netns exec ${rtname} sysctl -wq net.ipv4.conf.all.rp_filter=0 + ip netns exec ${rtname} sysctl -wq net.ipv4.conf.default.rp_filter=0 + ip -netns ${hsname} link add veth0 type veth peer name ${rtveth} ip -netns ${hsname} link set ${rtveth} netns ${rtname} ip -netns ${hsname} addr add ${IPv4_HS_NETWORK}.${hs}/24 dev veth0 @@ -276,11 +282,6 @@ setup_hs() ip netns exec ${rtname} sysctl -wq net.ipv4.conf.${rtveth}.proxy_arp=1 - # disable the rp_filter otherwise the kernel gets confused about how - # to route decap ipv4 packets. - ip netns exec ${rtname} sysctl -wq net.ipv4.conf.all.rp_filter=0 - ip netns exec ${rtname} sysctl -wq net.ipv4.conf.${rtveth}.rp_filter=0 - ip netns exec ${rtname} sh -c "echo 1 > /proc/sys/net/vrf/strict_mode" } -- 2.20.1