Ethernet.begin() from the Ethernet.cpp file in the Ethernet library.
The function begin() can take up to 5 arguments:
1) The MAC address of the Ethernet adapter.
2) The local IP address.
3) The IP address of the DNS Server (for doing name lookup)
4) The IP address of the default gateway (router)
5) The subnet mask (typically 255.255.255.0
If you leave off #5 it will use 255.255.255.0.
If you also leave off the gateway address it will use the first three parts of the local IP address folowed by a 1
If you also leave off the DNS server address it will use the first three parts of the local IP address folowed by a 1
If you also leave off the local IP address it will use DHCP to acquire one.
If you specify a local IP address of A.B.C.D and your DNS server or gateway are not at A.B.C.1 you won't have a connection to the internet.
void EthernetClass::begin(uint8_t *mac, IPAddress local_ip, IPAddress dns_server, IPAddress gateway, IPAddress subnet)
_dnsServerAddress = dns_server;