I'm getting result 0 on 'Ethernet.begin'
Very likely. If by some chance you are talking about a W5100 Ethernet shield, one that looks like it goes on a Uno, "mega compatible" means what it says, and it works on both. This is because it uses the 6-pin ICSP cluster, which is common to both, for its SPI signals.
Your post is unintelligible, but what you think might be the problem probably isn't.
Are you using the Ethernet.begin(mac) version of the function to get an IP address assigned by DHCP?