Opened 14 years ago
Closed 13 years ago
#9820 closed Bug Report - General (Fixed)
Upgraded to 'master', lost IPV4 connectivity
Reported by: | Owned by: | Raymond Wagner | |
---|---|---|---|
Priority: | minor | Milestone: | 0.25 |
Component: | MythTV - General | Version: | Master Head |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description
Hi All,
Just upgraded to the latest 'master' build, or more specifically:
2011-05-31 18:06:35.643 mythbackend version: master [v0.25pre-2076-g4d772e0] www.mythtv.org
And upon reboot the frontend couldn't connect to the backend.
A quick prod around with netstat showed the backend was listening on an IP6 address, but not an IP4 address, disabling ipv6 on the next reboot seems to have solved the issue.
Is this intentional? (and if so, what do I need to reconfigure to make it all work proper like.), or if not, should I file a bug report?
Any chance you can provide the output of running the backend with -v sockets with IPv6 enabled, as well as the output of ifconfig, and netstat -antu ?
If you could pop that into a ticket in trac I'll see what I can track down.
ian@pvr:~$ sudo netstat -pl | grep 6543 [sudo] password for ian: tcp6 0 0 [::]:6543 [::]:* LISTEN 1632/mythbackend ian@pvr:~$ sudo netstat -pl | grep backend tcp6 0 0 [::]:6543 [::]:* LISTEN 1632/mythbackend tcp6 0 0 [::]:6544 [::]:* LISTEN 1632/mythbackend udp 0 0 255.255.255.255:1900 *:* 1632/mythbackend udp 0 0 *:1900 *:* 1632/mythbackend ian@pvr:~$ sudo ifconfig eth3 Link encap:Ethernet HWaddr 00:c0:49:59:2b:de inet addr:192.168.0.121 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::2c0:49ff:fe59:2bde/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:603 errors:0 dropped:0 overruns:0 frame:0 TX packets:734 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:61255 (59.8 KiB) TX bytes:144266 (140.8 KiB) Interrupt:18 Base address:0x2c00 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:1012 errors:0 dropped:0 overruns:0 frame:0 TX packets:1012 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:508234 (496.3 KiB) TX bytes:508234 (496.3 KiB) ian@pvr:~$ sudo netstat -antu Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:4949 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN tcp 0 0 192.168.0.121:445 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:445 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN tcp 0 0 192.168.0.121:139 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:139 0.0.0.0:* LISTEN tcp 0 18 192.168.0.121:4949 192.168.0.254:55884 ESTABLISHED tcp 0 48 192.168.0.121:22 192.168.0.254:55885 ESTABLISHED tcp 0 0 192.168.0.121:37355 192.168.0.254:445 ESTABLISHED tcp6 0 0 :::6543 :::* LISTEN tcp6 0 0 :::6544 :::* LISTEN tcp6 0 0 :::6000 :::* LISTEN tcp6 0 0 :::6546 :::* LISTEN tcp6 0 0 :::6547 :::* LISTEN tcp6 0 0 :::22 :::* LISTEN tcp6 0 0 ::1:50560 ::1:6544 TIME_WAIT tcp6 0 0 ::1:50558 ::1:6544 TIME_WAIT tcp6 0 0 ::1:50565 ::1:6544 TIME_WAIT tcp6 0 0 ::1:50564 ::1:6544 TIME_WAIT udp 0 0 0.0.0.0:53721 0.0.0.0:* udp 0 0 255.255.255.255:1900 0.0.0.0:* udp 0 0 0.0.0.0:1900 0.0.0.0:* udp 0 0 255.255.255.255:1900 0.0.0.0:* udp 0 0 0.0.0.0:1900 0.0.0.0:* udp 0 0 192.168.0.255:137 0.0.0.0:* udp 0 0 192.168.0.121:137 0.0.0.0:* udp 0 0 0.0.0.0:137 0.0.0.0:* udp 0 0 192.168.0.255:138 0.0.0.0:* udp 0 0 192.168.0.121:138 0.0.0.0:* udp 0 0 0.0.0.0:138 0.0.0.0:* udp6 0 0 :::6948 :::* ian@pvr:~$
the log is quite large, so I've attached it.
Cheers,
Ian
Attachments (4)
Change History (19)
Changed 14 years ago by
Attachment: | myth_backend.log.gz added |
---|
comment:1 Changed 14 years ago by
Thanks for the info and the logs!
Would you might testing it with an updated checkout? I put in some fixes in the last day or so that might clear it up for you.
If it still fails there are somethings I forgot to ask are :
- Is this a combo Backend/Frontend? or seperate machines?
- Can you Send me the log output of starting up the frontend?
Changed 14 years ago by
Attachment: | upnp-v6-1.diff added |
---|
comment:3 Changed 14 years ago by
Hi Greg,
I've just updated to the latest master, the machine is rebooting now....
<time passes>
...
Well, that didn't work I'm afraid.
I'll try the patch when I get home in a few hours, see if that helps. :)
Cheers,
Ian
comment:4 Changed 14 years ago by
Didn't work I'm afraid.
I dunno if it's any use, but if I change line 203 in mythtv/programs/mythbackend/mainserver.cpp to use QHostAddress::Any it seems to work, further logging suggests 'gCoreContext->MythHostAddressAny?()' is returning '::' (Assuming this should be '0.0.0.0'?)
Cheers,
Ian
comment:5 Changed 13 years ago by
Owner: | set to greg |
---|---|
Status: | new → assigned |
comment:6 Changed 13 years ago by
Milestone: | unknown → 0.25 |
---|
comment:7 Changed 13 years ago by
Can you confirm for me if this is a combination fe/be box or are they on separate machines? And if they are on separate machines can you try manually telneting from the fe to the backend on port 6543 and see if you get a response (without your change in place?) your output show it is listenning so it's making me wonder if you or your distro have some sort of filter in place blocking all IPv6 traffic.
What distro is running on that backend?
Thanks
comment:8 Changed 13 years ago by
Hi Greg,
Sorry for the lateness of this reply.... :)
It's a combo FE/BE machine, running almost debian 6. (It was debian 5, myth stopped compiling, so I apt-get'd my way to whatever they call their unstable distro, this was not too long before deb 6 was released.)
It's however running a 3.0.4 kernel
ian@pvr:~$ uname -a Linux pvr 3.0.4-pvr #1 SMP PREEMPT Sat Oct 29 21:37:38 BST 2011 i686 GNU/Linux
Which part of my output, sorry, I'm a little confused? I've disabled IP6 (which forces the listening to happen on IP4), so am currently running an unmodified copy of whatever current was when compiled.
If I re-enable IP 6 I get the following:-
pvr:/home/ian# netstat -an --program | grep mythbackend tcp6 0 0 :::6543 :::* LISTEN 1682/mythbackend tcp6 0 0 :::6544 :::* LISTEN 1682/mythbackend udp 0 0 255.255.255.255:1900 0.0.0.0:* 1682/mythbackend udp 0 0 239.255.255.250:1900 0.0.0.0:* 1682/mythbackend unix 3 [ ] STREAM CONNECTED 9433 1682/mythbackend unix 3 [ ] STREAM CONNECTED 6921 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3917 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3892 1682/mythbackend unix 3 [ ] STREAM CONNECTED 8730 1682/mythbackend unix 3 [ ] STREAM CONNECTED 6902 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3884 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3881 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3879 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3861 1682/mythbackend unix 3 [ ] STREAM CONNECTED 8677 1682/mythbackend unix 3 [ ] STREAM CONNECTED 8311 1682/mythbackend unix 3 [ ] STREAM CONNECTED 2693 1682/mythbackend pvr:/home/ian#
I've attached a couple of screenshots, hopefully they'll illustrate better....
If you want me to investigate what I changed I can look at this further over the weekend.
Cheers,
Ian
Changed 13 years ago by
Attachment: | mythtv_ip6_disabled.png added |
---|
Changed 13 years ago by
Attachment: | mythtv_ip6_enabled.png added |
---|
comment:9 Changed 13 years ago by
... just one more thing.
Just to confirm, there's no firewall at all running on this machine. (It's not internet facing.)
Cheers,
Ian
comment:10 follow-up: 11 Changed 13 years ago by
.... Just another one more thing... :)
This is the main connection to the backend, from another frontend, UPnP is listening correctly on IP4 when IP6 is enabled.
It's just the backend not listening on 6543 that's the issue....
Oh, as I forgot to format the previous cut'n'paste, here it is again...
pvr:/home/ian# netstat -an --program | grep mythbackend tcp6 0 0 :::6543 :::* LISTEN 1682/mythbackend tcp6 0 0 :::6544 :::* LISTEN 1682/mythbackend udp 0 0 255.255.255.255:1900 0.0.0.0:* 1682/mythbackend udp 0 0 239.255.255.250:1900 0.0.0.0:* 1682/mythbackend unix 3 [ ] STREAM CONNECTED 9433 1682/mythbackend unix 3 [ ] STREAM CONNECTED 6921 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3917 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3892 1682/mythbackend unix 3 [ ] STREAM CONNECTED 8730 1682/mythbackend unix 3 [ ] STREAM CONNECTED 6902 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3884 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3881 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3879 1682/mythbackend unix 3 [ ] STREAM CONNECTED 3861 1682/mythbackend unix 3 [ ] STREAM CONNECTED 8677 1682/mythbackend unix 3 [ ] STREAM CONNECTED 8311 1682/mythbackend unix 3 [ ] STREAM CONNECTED 2693 1682/mythbackend pvr:/home/ian#
comment:11 Changed 13 years ago by
Replying to mrrooster@…:
Ian, your netstat looks fine. Below is an example of a frontend connected over IPv4 with IPv6 enabled. Running v0.25pre-3814-g6cf957e on Mythbuntu 11.10 (3.0.0 kernel.)
bill@mc1:/etc$ sudo netstat -pant|grep mythbackend tcp6 0 0 :::6543 :::* LISTEN 1683/mythbackend tcp6 0 0 :::6544 :::* LISTEN 1683/mythbackend tcp6 0 0 192.168.1.223:6543 192.168.1.200:44216 ESTABLISHED 1683/mythbackend tcp6 0 0 192.168.1.223:6543 192.168.1.200:44215 ESTABLISHED 1683/mythbackend
I suspect some kind of configuration issue.
If you want to put a copy of the failing frontend log on pastbin.com, I'd be happy to look at it. Or return to the mythtv-users list (or send private mail to keemllib at gmail.)
comment:12 Changed 13 years ago by
Status: | assigned → infoneeded |
---|
Please try this again with the current code on master.
comment:13 Changed 13 years ago by
No luck I'm afraid.
Mythweb can't connect to the backend...
$ mythbackend --version Please attach all output as a file in bug reports. MythTV Version : v0.25pre-4221-g23bf614 MythTV Branch : master Network Protocol : 72 Library API : 0.25.20120128-1 QT Version : 4.6.3 Options compiled in: linux profile use_hidesyms using_alsa using_oss using_pulse using_pulseoutput using_backend using_bindings_python using_bindings_php using_dvb using_frontend using_hdhomerun using_ceton using_hdpvr using_iptv using_ivtv using_joystick_menu using_libcrypto using_libxml2 using_lirc using_mheg using_opengl_video using_qtwebkit using_qtscript using_qtdbus using_v4l2 using_v4l1 using_x11 using_xrandr using_xv using_bindings_python using_bindings_php using_mythtranscode using_opengl using_vdpau using_ffmpeg_threads using_live using_mheg using_libxml2 $ ls -l `which mythbackend` -rwxr-xr-x 1 root staff 12715233 Jan 30 09:19 /usr/local/mythtv/bin/mythbackend $ netstat -a | grep 6543 tcp6 0 0 [::]:6543 [::]:* LISTEN $
This is with net.ipv6.bindv6only
= 1
If I change this, or disable ip6, everything is fine:
root@pvr:/home/ian# sysctl net.ipv6.bindv6only net.ipv6.bindv6only = 1 root@pvr:/home/ian# sysctl net.ipv6.bindv6only=0 net.ipv6.bindv6only = 0 root@pvr:/home/ian# /etc/init.d/myth-backend stop Stopping Myth backend....done. root@pvr:/home/ian# /etc/init.d/myth-backend start Starting Myth backend....done. root@pvr:/home/ian# netstat -a | grep 6543 tcp 0 0 localhost:43338 localhost:6543 ESTABLISHED tcp 0 0 localhost:43337 localhost:6543 ESTABLISHED tcp6 0 0 [::]:6543 [::]:* LISTEN tcp6 0 0 localhost:6543 localhost:43338 ESTABLISHED tcp6 0 0 localhost:6543 localhost:43337 ESTABLISHED root@pvr:/home/ian#
comment:14 Changed 13 years ago by
Owner: | changed from greg to Raymond Wagner |
---|---|
Status: | infoneeded → assigned |
Patch forthcoming to listen specifically to the addresses specified in the database, rather than a blanket "any" that is subject to the bindv6only issues.
comment:15 Changed 13 years ago by
Resolution: | → Fixed |
---|---|
Status: | assigned → closed |
Alter various listen servers to bind to discrete addresses.
Fixes #9820
Branch: master
Changeset: 37385baff83eea77116d13e22be96b74cfde2cec
Myth backend log with lots of lovely logging options turned on. :)