{"id":384,"date":"2020-04-22T12:35:33","date_gmt":"2020-04-22T12:35:33","guid":{"rendered":"http:\/\/www.ishygddt.xyz.\/~blog\/?p=384"},"modified":"2022-03-08T19:22:52","modified_gmt":"2022-03-08T19:22:52","slug":"accidental-trolling-folding-home","status":"publish","type":"post","link":"http:\/\/www.ishygddt.xyz\/~blog\/2020\/04\/accidental-trolling-folding-home","title":{"rendered":"Accidentally trolling Folding@home"},"content":{"rendered":"<p>The servers for <a href=\"http:\/\/foldingathome.org\/\">Folding@home<\/a> V7 apparently return <span style=\"text-decoration: underline\">invalid<\/span> \u201cwork server\u201d IPs to clients requesting Work Units for unsupported GPUs.<\/p>\n<p>The client software prints <span style=\"text-decoration: underline\">no explanatory error message<\/span>, leaves the unsupported GPU\u2019s \u201ccompute slot\u201d enabled (taking 1 CPU core out of commission with it), and indefinitely continues to attempt to connect to the obviously-dummy IPs to request Work Units, interleaving bizarre and confusing connection errors in the logs.<\/p>\n<p>This behavior is <span style=\"text-decoration: underline\">entirely undocumented<\/span>, save some passing comments from staff or otherwise-informed posters, indistinguishable at-a-glance from the rest of the ocean of topical speculation, in each of the <em>many<\/em> threads on this topic.<\/p>\n<p>Before realizing that these dummy IPs are being given out\u00a0<em>intentionally<\/em>, I <a href=\"https:\/\/github.com\/FoldingAtHome\/fah-issues\/issues\/1309#issuecomment-604774665\">posted<\/a> the following\u00a0<em>very clever<\/em> \u201cworkaround\u201d:<\/p>\n<pre>sudo ip addr add 192.0.2.1\/24 dev `cd \/sys\/class\/net ; ls -d1t e* | head -n 1`\nsudo ssh -v `whoami`@localhost -L 192.0.2.1:80:40.114.52.201:80\\\n -L 192.0.2.1:8080:40.114.52.201:8080 tail -F \/var\/lib\/fahclient\/log.txt<\/pre>\n<p>As you can probably deduce, this will forward all TCP connections to <code class=\"\" data-line=\"\">192.0.2.1<\/code> on ports 80 and 8080 to the IP <code class=\"\" data-line=\"\">40.114.52.201:80<\/code>\u2014a legitimate work server.<\/p>\n<p>Sadly\/thankfully, these servers seem to return empty responses to clients reporting unsupported GPUs\u2014it would certainly have been embarrassing to retrieve a sequence of GPU Work Units and then be unable to complete them due to missing <code class=\"\" data-line=\"\">cl_khr_fp64<\/code>\u2026<\/p>\n<pre>12:34:56:ERROR:WU00:FS01:Exception: 10002: Received short response, expected 512 bytes, got 0<\/pre>\n","protected":false},"excerpt":{"rendered":"<pre>sudo ip addr add 192.0.2.1\/24 dev `cd \/sys\/class\/net ; ls -d1t e* | head -n 1`\nsudo ssh -v `whoami`@localhost -L 192.0.2.1:80:40.114.52.201:80\\\n -L 192.0.2.1:8080:40.114.52.201:8080 tail -F \/var\/lib\/fahclient\/log.txt<\/pre>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[14,127,150],"class_list":["post-384","post","type-post","status-publish","format-standard","hentry","category-drafts","tag-folding-at-home","tag-pain","tag-ssh"],"_links":{"self":[{"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/posts\/384","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/comments?post=384"}],"version-history":[{"count":1,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/posts\/384\/revisions"}],"predecessor-version":[{"id":2048,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/posts\/384\/revisions\/2048"}],"wp:attachment":[{"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/media?parent=384"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/categories?post=384"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/tags?post=384"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}