Very basic WAN simulation for opencomputers,
everything is more of a simulation than an implementation, I'm making this to connect opencomputers of my friends bases and facilities.
it allows you to connect different networks without sharing LAN messages to WAN
- installation scripts
- LAN communications
- WAN communications (through routers)
- Port mapping to receive wan messages
- ISP to connect multiple routers
- DHCP assignment to WAN and LAN
- ARP/NAT tables to avoid broadcasting
right now I only tested LAN messages which you can send using LAN/router_info.lua
script on one OC and have it read by the LAN/client.lua
script on another OC connected in a LAN with a Router (see below how)
every (part)
is a different computer; -
rapresent cable connections (wlan not yet implemented) I much recommend using relays between connections (especially ouside LAN) to avoid components taking (eg the screens)
(LAN1) - (Router/router.lua
) - RELAY - (ISP/ISP.lua
)
This is an example of a simple network, you have to run the scripts in order (ISP -> Router -> LAN).
The Router must be in a rack, it needs two network cards connected to different sides, the script automatically determines which one is facing WAN and LAN
LAN1 must have the LAN/lan.lua
lib to be able to use the client scripts, you can write your own client following the examples provided in the LAN
folder (not recommended right now, things most likely WILL change)
- as mentioned, WIP
- nothing is saved to memory right now, so state is preserved as long as the scripts stay loaded
- please see TODO.md for future features
since address and ip address are confusing, in the script whenever I mention "ADDR" or "ADDRESS" I refer to an opencomputer network card address. If I mention "DA", "SA" or "IP" I refer to an IP Address (Destination, Sender, IP)
- ISP: an OC that connects multiple routers in a WAN
- Router: an OC that connects multiple OCs in a LAN and allows them to communicate to other networks through the ISP
- LAN: a collection of OCs that communicate through the router