OpenWrt/LEDE Project

  • Status Unconfirmed
  • Percent Complete
    0%
  • Task Type Bug Report
  • Category Base system
  • Assigned To No-one
  • Operating System All
  • Severity Low
  • Priority Very Low
  • Reported Version Trunk
  • Due in Version Undecided
  • Due Date Undecided
  • Private
Attached to Project: OpenWrt/LEDE Project
Opened by ratsputin - 11.01.2020

FS#2724 - Busybox ping does not handle -I <interface name> correctly; iputils-ping does but is missing

Device: Netgear R7800
Version: OpenWrt SNAPSHOT r11954-7936cb94a9 / LuCI Master git-20.009.37523-c8909a6

This has been going on for quite a while; however, I was able to get around it by using iputils-ping which apparently doesn’t exist anymore.

The Busybox version of ping does not handle the -I switch correctly in a multi-wan setup. See below:

Interface configuration information (WAN links):

eth1.100  Link encap:Ethernet  HWaddr 38:94:ED:B8:EA:64
          inet addr:<AT&T Static IP>  Bcast:<AT&T Static broadcast IP>  Mask:255.255.255.248
          inet6 addr: <redacted> Scope:Global
          inet6 addr: <redacted> Scope:Global
          inet6 addr: <redacted> Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4168 errors:0 dropped:972 overruns:0 frame:0
          TX packets:1687 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:403572 (394.1 KiB)  TX bytes:118858 (116.0 KiB)

eth1.99   Link encap:Ethernet  HWaddr 38:94:ED:B8:EA:63
          inet addr:<Comcast DHCP IP>  Bcast:<Comcast Broadcast IP>  Mask:255.255.252.0
          inet6 addr: <redacted> Scope:Link
          inet6 addr: <redacted> Scope:Global
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:173068 errors:0 dropped:0 overruns:0 frame:0
          TX packets:181502 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:910743533 (868.5 MiB)  TX bytes:19114819 (18.2 MiB)

On the primary (WAN) interface, everything works as expected:

root@orion:~# ping -I eth1.99 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
64 bytes from 8.8.8.8: seq=0 ttl=55 time=19.096 ms
64 bytes from 8.8.8.8: seq=1 ttl=55 time=14.651 ms
64 bytes from 8.8.8.8: seq=2 ttl=55 time=14.331 ms
^C
--- 8.8.8.8 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 14.331/16.026/19.096 ms
root@orion:~# ping -I <Comcast IP> 8.8.8.8
PING 8.8.8.8 (8.8.8.8) from <Comcast IP>: 56 data bytes
64 bytes from 8.8.8.8: seq=0 ttl=55 time=14.481 ms
64 bytes from 8.8.8.8: seq=1 ttl=55 time=15.447 ms
64 bytes from 8.8.8.8: seq=2 ttl=55 time=14.301 ms
64 bytes from 8.8.8.8: seq=3 ttl=55 time=20.306 ms
^C
--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 14.301/16.133/20.306 ms

However, if I try the same on the AT&T link, I get the following:

root@orion:~# ping -I eth1.100 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
^C
--- 8.8.8.8 ping statistics ---
17 packets transmitted, 0 packets received, 100% packet loss
root@orion:~# ping -I <AT&T IP addr> 8.8.8.8
PING 8.8.8.8 (8.8.8.8) from <AT&T IP addr>: 56 data bytes
64 bytes from 8.8.8.8: seq=0 ttl=55 time=13.816 ms
64 bytes from 8.8.8.8: seq=1 ttl=55 time=14.625 ms
64 bytes from 8.8.8.8: seq=2 ttl=55 time=16.299 ms
64 bytes from 8.8.8.8: seq=3 ttl=55 time=16.515 ms
64 bytes from 8.8.8.8: seq=4 ttl=55 time=14.710 ms
^C
--- 8.8.8.8 ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 13.816/15.193/16.515 ms
root@orion:~#

I only have this issue with the Busybox version of ping. The old iputils-ping version did not have this issue.

The interesting part is that other people seem to have the opposite issue as me, where Busybox works and iputils-ping doesn’t. Unfortunately, this breaks mwan3 for me.

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing