Racket implementation of Dataspaces and Syndicate.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
syndicate-rkt/syndicate-examples/netstack
Tony Garnock-Jones 2a360bff32 Adjust copyrights 2 years ago
..
Makefile Rearrange for independent packages. 3 years ago
README.md Rearrange for independent packages. 3 years ago
TODO.md Rearrange for independent packages. 3 years ago
arp.rkt Adjust copyrights 2 years ago
checksum.rkt Adjust copyrights 2 years ago
configuration.rkt Adjust copyrights 2 years ago
demo-config.rkt Adjust copyrights 2 years ago
dump-bytes.rkt Adjust copyrights 2 years ago
ethernet.rkt Adjust copyrights 2 years ago
fetchurl.rkt Adjust copyrights 2 years ago
ip.rkt Adjust copyrights 2 years ago
main.rkt Adjust copyrights 2 years ago
port-allocator.rkt Adjust copyrights 2 years ago
tcp.rkt Adjust copyrights 2 years ago
udp.rkt Adjust copyrights 2 years ago

README.md

TCP/IP Stack

This implementation is largely the same as the old-Syndicate "incremental highlevel" implementation, but using new-Syndicate.

Linux Firewall Configuration

Imagine a setup where the machine you are running this code has IP 192.168.2.10. This code claims 192.168.2.222 for itself. Now, pinging 192.168.2.222 from some other machine, say 192.168.2.99, will cause the local kernel to receive the pings and then forward them on to 192.168.2.222, which because of the gratuitous ARP announcement, it knows to be on its own Ethernet MAC address. This causes the ping requests to repeat endlessly, each time with one lower TTL.

One approach to solving the problem is to prevent the kernel from forwarding packets addressed to 192.168.2.222. To do this,

sudo iptables -I FORWARD -d 192.168.2.222 -j DROP