title: Python http.server on port 8000 works while xmlrpc.server on port 8000 refuses connection
body: <p>I am trying to figure out why</p>
  
  <pre><code>python -m http.server 8000
  </code></pre>
  
  <p>works, while</p>
  
  <pre><code>python rpc_server.py 8000
  </code></pre>
  
  <p>refuses a connection from remote hosts. My rpc_server.py code is taken verbatim from: <a href="https://docs.python.org/3/library/xmlrpc.server.html" rel="nofollow">https://docs.python.org/3/library/xmlrpc.server.html</a></p>
  
  <p>When I make a GET request to the http.server, everything works fine, both locally and remotely (router is correctly forwarding requests). Similarly, when I ping the rpc_server from the same machine (localhost), I get a response. However, when I ping the rpc_server from another machine (remote host), I get 'connection refused'. Using tcpdump, I can see that when I submit a SYN request the response is always RST. Why is the SimpleXMLRPCServer sending a reset signal to all remote host requests but not local host requests? (I have tried sending the remote host request using both POSTMAN in Chrome and rpc_client.py [taken from the same tutorial above]).</p>