Before anyone would be able to assist you with your problem you must first know what your own problem is. Stress testing a system implies you know what you want to test. What are you actually trying to stress test?
Is it DHCP? Not a problem it's designed to handle millions of clients so 400 is barely a load spike (if any). No tools to benchmark on Linux? False...
Google. DHCPTest-python would work on any system including Linux and was one of the first results for me.
Is it the web interface? There are plenty of stress testing tools and writing your own in Python would be easy. (Capybara, Selenium, PhantomJS, and others. Google. Quality Assurance tools comes to mind.)
What are the specs of the system managing the services? That would help determining your ability to handle the load (which I highly doubt is an issue at all).
Quote:
Originally Posted by MortenOnDebian
a) what happens when there are many almost simultaneous requests for IP adresses and
|
Probably nothing. DHCP (the protocol) and dhcpd (the daemon) is designed to handle millions of clients.
Quote:
Originally Posted by MortenOnDebian
b) what happens when we reach 255+ clients
|
This question is too ambiguous. What is the IP address range you're giving your clients (i.e. subnet)? If it's 192.168.1.0/24 then no, you will not be able to handle more than 254 clients and realistically not more than 253 clients because one of them is your DHCP server. You need to provide more information. If you're not sure about your networking abilities then just set your IP farm to be a 10.0.0.0/8 private network which supports 16,777,216 addresses.
Google.
There are plenty of tools out there to test the components you suggest need testing. You just have to type a web search. Also, I'm not sure you even need to test considering the amount of clients you plan on supporting with your system. Instability of the system will likely come from another part of the system with such a light load. That's where you need to implement monitoring (something like Icinga, Zabbix, or other monitoring alternative). To get a real understanding of the system you must graph performance trends. This involves installing something like PNP4Nagios (works with Icinga) or munin. When you're stress testing how will you know what's going on if you don't record any data? Those are my suggestions.
SAM