At the basic IP level, yes
- Static addressing will work
- Setting up one DHCP server will work
- Either one of the PCs
- On a small router
Most small-business switches without any configuration behave like a simple unmanaged switch, and certainly you don't need anything beyond that for what you desccribe.
By "work" I mean these:
- ping another host by IP address
- web from one host to another by IP address (on presumption you have a web server)
- SSH from one host to another by IP address (on presumption they are set up to accept SSH)
What won't work is any name-to-address translation
For short-duration small networks
- Just using IP addresses is fine
/etc/hosts (unix) or
hosts.txt (Windows) for the few names you need
- Set up a DNS server (not recommended if you are new to this)
- Set up Windows NetBIOS-type name resolution (not recommended if you're new to that)
Another thing which won't work (as you've described your network) is any kind of check-license-over-internet, which a lot of software uses these days.
Something which might surprise you is the amount of software which checks the reverse lookups of incoming IP addresses. For example, many telnet, SSH, web, mail server programs will reverse lookup the IP address (ie, make a DNS lookup to find the name from the IP address). These programs will normally make DNS lookup to their configured DNS server, which is possibly on the far side of a local router. These things can sometimes fail and retry rather slowly. Some applications and operating systems will let you use
/etc/hosts as mentioned above.
This issue is definitely worth checking with your planned applications.