1#!/usr/bin/python 2# dhcp.py 3# Butterfly-like topology test for dhcp 4# One DHCP server, serving on two interface 5# Eigth DHCP clients, four on each network 6# 7# s1----@ @----r1 8# s2-----\__ DHCP __/-----r2 9# s3-----/ \-----r3 10# s4----@ @----r4 11# 12 13 14from topology import * 15 16T = Topology() 17net1 = Network(T, "pyt1") 18net2 = Network(T, "pyt2") 19 20server = Host(T, net1, net2, args="dhcpserver:eth1:172.16.1.2:255.255.255.0:64:128:eth2:172.16.2.2:255.255.255.0:64:128") 21 22s1 = Host(T, net1, args="dhcpclient:eth1") 23s2 = Host(T, net1, args="dhcpclient:eth1") 24s3 = Host(T, net1, args="dhcpclient:eth1") 25s4 = Host(T, net1, args="dhcpclient:eth1") 26r1 = Host(T, net2, args="dhcpclient:eth1") 27r2 = Host(T, net2, args="dhcpclient:eth1") 28r3 = Host(T, net2, args="dhcpclient:eth1") 29r4 = Host(T, net2, args="dhcpclient:eth1") 30 31raw_input("Press enter to continue ...") 32start(T) 33 34wait(server) 35 36cleanup() 37