Skip to content

Adding a ChatServer over DNS!

Compare
Choose a tag to compare
@SuperFola SuperFola released this 19 Jan 19:32
· 45 commits to master since this release

v0.0.2

Added

  • converter.py, to encode/decode ascii in base 32 and base 64 flawlessly
  • packet.py to encapsulate a lot of dull work
  • threaded udp socket server binded on port 53 otherwise we have an ICMP type 3 error (port unreachable, because nothing is binded to it)
  • simple chat server, anonymizing the ip addresses, can receive commands to get the messages (/consult), otherwise just add the message to the queue
  • error catching on subdomains decoding errors

Changed

  • now using subdomains of a main domain instead of the qname field, in case it's filtered
  • the replies come in DNS reply answer field, as TXT
  • the answer now includes the original question
  • the IP packet is constructed with a TOS of 0x28 (normal priority, high throughput)
  • TTL was added to the answer
  • transaction id added to DNS layer (random, generated by client)
  • random source port for UDP packet
  • the client can now get a message as command line parameter
  • fixing a bug on the decoders: they were adding padding when it shouldn't (payload size modulo 4 = 0)