Socat broken pipe

Dear advanced users, developers and others who helped me perfect in the past, unfortunately I have a new issue that's not LEDE related, but couldn't find help in the openwrt forums or elsewhere.

Since every single problem I ever encountered was solved by the LEDE community, I once again hope for your help.

I run a few IPv4 only webcams on my network.
Soon my internet connection will be IPv6 only.

Now I am trying to get socat up and running and for testing purposes I tried several ways to forward ipv6 to ipv4, but the latest command I'm using is this:
socat TCP6-LISTEN:10443,fork,su=nobody TCP4:172.22.64.30:443
(I tried many different commands and they all result in the same behavior and same error)

The webpage of the webcam does load, but trying to login gives me a timeout.

socat itself gives me this message:
socat[5456] E write(6, 0x1887020, 37): Broken pipe

Any idea what this means and why I can load the web camera web-page but not login?

Some more info. I enabled -d -d to view accessing the html of the webcam all only "successfully connected" messages. But the moment I'm trying to login:

2017/04/25 10:04:58 socat[24560] N socket 2 (fd 5) is at EOF
2017/04/25 10:04:58 socat[24560] N exiting with status 0
2017/04/25 10:04:58 socat[24516] N childdied(): handling signal 17
2017/04/25 10:05:52 socat[24557] N socket 2 (fd 5) is at EOF
2017/04/25 10:05:52 socat[24558] N socket 2 (fd 5) is at EOF
2017/04/25 10:05:52 socat[24559] N socket 2 (fd 5) is at EOF
2017/04/25 10:05:52 socat[24556] N socket 2 (fd 5) is at EOF
2017/04/25 10:05:52 socat[24561] N socket 2 (fd 5) is at EOF
2017/04/25 10:05:53 socat[24558] N exiting with status 0
2017/04/25 10:05:53 socat[24559] N exiting with status 0
2017/04/25 10:05:53 socat[24557] N exiting with status 0
2017/04/25 10:05:53 socat[24516] N childdied(): handling signal 17
2017/04/25 10:05:53 socat[24561] N exiting with status 0
2017/04/25 10:05:53 socat[24516] N childdied(): handling signal 17
2017/04/25 10:05:53 socat[24556] N exiting with status 0
2017/04/25 10:05:53 socat[24516] N childdied(): handling signal 17

and then the time-out

Try using the end-close option: socat TCP6-LISTEN:10443,fork,su=nobody TCP4:172.22.64.30:443,end-close. See here for an explanation: https://medium.com/@copyconstruct/socat-29453e9fc8a6

1 Like