# # java -cp bin:../../java-router/build/deploy/lib/RawSocket.jar:../../java-router/build/deploy/lib/JythonRouter.jar:../../java-router/ThirdParty/jython2.5.1/jython.jar Main ../../java-router/code/scripts/preconfig.py ../../java-router/code/scripts/simple-ping.py from code.messy.net.ethernet import Ethertype, ArpHandler from code.messy.net.ip import IpProtocolHandler, PacketToIp, IpPacket from code.messy.net.ip.icmp import IcmpHandler from code.messy.net.ip.route import LocalSubnet from java.net import InetAddress icmp = IcmpHandler() protocol = IpProtocolHandler() protocol.register(IpPacket.Protocol.ICMP, icmp) pak2Ip = PacketToIp(protocol) arp = ArpHandler() address = InetAddress.getByName('10.0.0.2') LocalSubnet.create(address, 24, interface['eth1']) address = InetAddress.getByName('10.1.0.2') LocalSubnet.create(address, 24, interface['eth2']) interface['eth1'].register(Ethertype.ARP, arp) interface['eth2'].register(Ethertype.ARP, arp) interface['eth1'].register(Ethertype.IP, pak2Ip) interface['eth2'].register(Ethertype.IP, pak2Ip) interface['eth1'].start() interface['eth2'].start()
from code.messy.net.ethernet import Ethertype, ArpHandler, EthernetIpSupport from code.messy.net.ip import IpProtocolHandler, IpPacket from code.messy.net.ip.udp import UdpHandler from code.messy.net.ip.dhcp import DhcpHandler from code.messy.net.ip.route import LocalSubnet, RouteHandler, RoutingTable from java.net import InetAddress route = RouteHandler() eth1ip = EthernetIpSupport(interface['eth1']) eth2ip = EthernetIpSupport(interface['eth2']) address = InetAddress.getByName('10.1.0.1'); eth1network = LocalSubnet.create(address, 24, eth1ip) address = InetAddress.getByName('10.2.0.1'); eth2network = LocalSubnet.create(address, 24, eth2ip) udp1 = UdpHandler() protocol1 = IpProtocolHandler() protocol1.register(IpPacket.Protocol.UDP, udp1) protocol1.register(route) dhcp1 = DhcpHandler(eth1network) udp1.add(None, 67, dhcp1) udp2 = UdpHandler() protocol2 = IpProtocolHandler() protocol2.register(IpPacket.Protocol.UDP, udp2) protocol2.register(route) dhcp2 = DhcpHandler(eth2network) udp2.add(None, 67, dhcp2)
# # java -cp bin:../../java-router/build/deploy/lib/RawSocket.jar:../../java-router/build/deploy/lib/JythonRouter.jar:../../java-router/ThirdParty/jython2.5.1/jython.jar Main ../../java-router/code/scripts/preconfig.py ../../java-router/code/scripts/simple-ping.py from code.messy.net.ethernet import Ethertype, ArpHandler from code.messy.net.ip import IpProtocolHandler, PacketToIp, IpPacket from code.messy.net.ip.icmp import IcmpHandler from code.messy.net.ip.route import LocalSubnet from java.net import InetAddress icmp = IcmpHandler() protocol = IpProtocolHandler() protocol.register(IpPacket.Protocol.ICMP, icmp) pak2Ip = PacketToIp(protocol) arp = ArpHandler() address = InetAddress.getByName('10.0.0.2') LocalSubnet.create(address, 24, interface['eth1']) address = InetAddress.getByName('10.1.0.2'); LocalSubnet.create(address, 24, interface['eth2']) interface['eth1'].register(Ethertype.ARP, arp) interface['eth2'].register(Ethertype.ARP, arp) interface['eth1'].register(Ethertype.IP, pak2Ip) interface['eth2'].register(Ethertype.IP, pak2Ip) interface['eth1'].start() interface['eth2'].start()
from code.messy.net.ethernet import Ethertype, ArpHandler, EthernetIpSupport from code.messy.net.ip import IpProtocolHandler, IpPacket from code.messy.net.ip.udp import UdpHandler from code.messy.net.ip.dhcp import DhcpHandler from code.messy.net.ip.route import LocalSubnet, RouteHandler, RoutingTable from java.net import InetAddress route = RouteHandler() eth1ip = EthernetIpSupport(interface['eth1']) eth2ip = EthernetIpSupport(interface['eth2']) address = InetAddress.getByName('10.1.0.1') eth1network = LocalSubnet.create(address, 24, eth1ip) address = InetAddress.getByName('10.2.0.1') eth2network = LocalSubnet.create(address, 24, eth2ip) udp1 = UdpHandler() protocol1 = IpProtocolHandler() protocol1.register(IpPacket.Protocol.UDP, udp1) protocol1.register(route) dhcp1 = DhcpHandler(eth1network) udp1.add(None, 67, dhcp1) udp2 = UdpHandler() protocol2 = IpProtocolHandler() protocol2.register(IpPacket.Protocol.UDP, udp2) protocol2.register(route) dhcp2 = DhcpHandler(eth2network) udp2.add(None, 67, dhcp2)