Project

General

Profile

tickets #49892

IPv4/IPv6 inconsistent rsync check.

Added by lllevonnn about 1 year ago. Updated about 1 year ago.

Status:
In Progress
Priority:
Normal
Assignee:
Category:
Mirrors
Start date:
2019-04-02
Due date:
% Done:

0%

Estimated time:
Duration:

Description

Hello,
I can see some activity in ticket processing so I am reopening ticket from more than year ago, which is gone now.

According to rsync log from mirror maintained by me (opensuse.ucom.am), there is inconsistency with check script running via IPv4 over check running via IPv6.
Please have a look below snippet from rsyncd log.

2019/04/02 09:44:02 [11935] connect from scanner.opensuse.org (2620:113:80c0:8::20)
2019/04/02 05:44:03 [11935] rsync on opensuse/tumbleweed from scanner.opensuse.org (2620:113:80c0:8::20)
2019/04/02 05:44:03 [11935] building file list
2019/04/02 05:44:03 [11935] sent 72 bytes  received 25 bytes  total size 0
2019/04/02 09:47:49 [11960] connect from scanner.opensuse.org (195.135.221.170)
2019/04/02 05:47:50 [11960] rsync on opensuse//tumbleweed/. from scanner.opensuse.org (195.135.221.170)
2019/04/02 05:47:50 [11960] building file list
2019/04/02 05:48:27 [11960] rsync: connection unexpectedly closed (16 bytes received so far) [sender]
2019/04/02 05:48:27 [11960] rsync error: error in rsync protocol data stream (code 12) at io.c(235) [sender=3.1.3]
2019/04/02 12:44:02 [16655] connect from scanner.opensuse.org (2620:113:80c0:8::20)
2019/04/02 08:44:02 [16655] rsync on opensuse/tumbleweed from scanner.opensuse.org (2620:113:80c0:8::20)
2019/04/02 08:44:02 [16655] building file list
2019/04/02 08:44:03 [16655] sent 72 bytes  received 25 bytes  total size 0
2019/04/02 12:47:43 [16678] connect from scanner.opensuse.org (195.135.221.170)
2019/04/02 08:47:43 [16678] rsync on opensuse//tumbleweed/. from scanner.opensuse.org (195.135.221.170)
2019/04/02 08:47:43 [16678] building file list
2019/04/02 08:48:22 [16678] rsync: connection unexpectedly closed (16 bytes received so far) [sender]
2019/04/02 08:48:22 [16678] rsync error: error in rsync protocol data stream (code 12) at io.c(235) [sender=3.1.3]
2019/04/02 13:21:19 [16766] connect from downloadcontent.opensuse.org (2620:113:80c0:8::27)
2019/04/02 09:21:19 [16766] rsync on opensuse/history from downloadcontent.opensuse.org (2620:113:80c0:8::27)
2019/04/02 09:21:19 [16766] building file list
2019/04/02 09:21:19 [16766] rsync: link_stat "/history" (in opensuse) failed: No such file or directory (2)
2019/04/02 09:21:19 [16766] sent 97 bytes  received 8 bytes  total size 0
2019/04/02 15:44:02 [23033] connect from scanner.opensuse.org (2620:113:80c0:8::20)
2019/04/02 11:44:03 [23033] rsync on opensuse/tumbleweed from scanner.opensuse.org (2620:113:80c0:8::20)
2019/04/02 11:44:03 [23033] building file list
2019/04/02 11:44:03 [23033] sent 72 bytes  received 25 bytes  total size 0
2019/04/02 15:48:16 [23057] connect from scanner.opensuse.org (195.135.221.170)
2019/04/02 11:48:17 [23057] rsync on opensuse//tumbleweed/. from scanner.opensuse.org (195.135.221.170)
2019/04/02 11:48:17 [23057] building file list
2019/04/02 11:48:55 [23057] rsync: connection unexpectedly closed (16 bytes received so far) [sender]
2019/04/02 11:48:55 [23057] rsync error: error in rsync protocol data stream (code 12) at io.c(235) [sender=3.1.3]

As you can see check over IPv6 succeed, but over IPv4 does not. I suspect it is because of the difference in query over IPv4 which have extra slash and dot in the end (opensuse//tumbleweed/.).

I also suspect this is the reason why the check mark under "Tumbleweed repo", "Tumbleweed debug" and "Tumbleweed source" in https://mirrors.opensuse.org/ is not being ticked for any server in the list, including mine.

Can someone please have a look?

History

#1 Updated by pjessen about 1 year ago

  • Category set to Mirrors
  • Status changed from New to In Progress
  • Assignee set to pjessen
  • Private changed from Yes to No

Very interesting observation, thanks. I'll take a look.

#2 Updated by pjessen about 1 year ago

I can confirm the behaviour (seen on our own mirror)

2019/04/03 07:45:51 [18812] connect from scanner.opensuse.org (195.135.221.170)
2019/04/03 05:45:51 [18812] rsync on opensuse//tumbleweed/. from scanner.opensuse.org (195.135.221.170)
2019/04/03 05:45:51 [18812] building file list
2019/04/03 05:46:23 [19023] sent 16786 bytes  received 21461 bytes  total size 18812653
2019/04/03 05:46:26 [18812] rsync: connection unexpectedly closed (16 bytes received so far) [sender]
2019/04/03 05:46:26 [18812] rsync error: error in rsync protocol data stream (code 12) at io.c(235) [sender=3.1.3]


2019/04/03 07:40:42 [17180] connect from scanner.opensuse.org (2620:113:80c0:8::20)
2019/04/03 05:40:42 [17180] rsync on opensuse/tumbleweed from scanner.opensuse.org (2620:113:80c0:8::20)
2019/04/03 05:40:42 [17180] building file list
2019/04/03 05:40:43 [17180] sent 72 bytes  received 25 bytes  total size 0

#3 Updated by lllevonnn about 1 year ago

Hi Per,

FYI, I just found similar behavior for other folder.

2019/04/09 10:02:52 [8351] connect from downloadcontent.opensuse.org (2620:113:80c0:8::27)
2019/04/09 06:02:52 [8351] rsync on opensuse/repositories/openSUSE:/Maintenance:/9198/openSUSE_Leap_15.0_Update from downloadcontent.opensuse.org (2620:113:80c0:8::27)
2019/04/09 06:02:53 [8351] building file list
2019/04/09 06:02:53 [8351] sent 88 bytes  received 25 bytes  total size 0
2019/04/09 10:03:04 [8352] connect from stage.opensuse.org (195.135.221.130)
2019/04/09 06:03:04 [8352] rsync on opensuse//repositories/openSUSE:/Maintenance:/9198/openSUSE_Leap_15.0_Update/. from stage.opensuse.org (195.135.221.130)
2019/04/09 06:03:04 [8352] building file list
2019/04/09 06:03:04 [8352] rsync: connection unexpectedly closed (16 bytes received so far) [sender]
2019/04/09 06:03:04 [8352] rsync error: error in rsync protocol data stream (code 12) at io.c(235) [sender=3.1.3]

#4 Updated by pjessen about 1 year ago

In my case (with mirror.hostsuisse.com), it turned out to be a timeout setting.

What is really interesting: the scanner perl script (from mirrorbrain-scanner) is fairly old and uses inet_aton(). inet_aton() cannot return an IPv6 address, only IPv4. I have to look at what else might be doing some scanning.

Also available in: Atom PDF