1. 23 11月, 2016 3 次提交
    • F
      p2p/discover, p2p/discv5: prevent relay of invalid IPs and low ports · a98d1d67
      Felix Lange 提交于
      The discovery DHT contains a number of hosts with LAN and loopback IPs.
      These get relayed because some implementations do not perform any checks
      on the IP.
      
      go-ethereum already prevented relay in most cases because it verifies
      that the host actually exists before adding it to the local table. But
      this verification causes other issues. We have received several reports
      where people's VPSs got shut down by hosting providers because sending
      packets to random LAN hosts is indistinguishable from a slow port scan.
      
      The new check prevents sending random packets to LAN by discarding LAN
      IPs sent by Internet hosts (and loopback IPs from LAN and Internet
      hosts). The new check also blacklists almost all currently registered
      special-purpose networks assigned by IANA to avoid inciting random
      responses from services in the LAN.
      
      As another precaution against abuse of the DHT, ports below 1024 are now
      considered invalid.
      a98d1d67
    • F
      p2p/discover, p2p/discv5: use netutil.IsTemporaryError · ba2884f3
      Felix Lange 提交于
      ba2884f3
    • F
      p2p/netutil: new package for network utilities · 1d80155d
      Felix Lange 提交于
      The new package contains three things for now:
      
      - IP network list parsing and matching
      - The WSAEMSGSIZE workaround, which is duplicated in p2p/discover and
        p2p/discv5.
      1d80155d
  2. 18 11月, 2016 5 次提交
  3. 17 11月, 2016 3 次提交
  4. 16 11月, 2016 11 次提交
  5. 15 11月, 2016 18 次提交