I've had the same problem for quite some time.
The solution that worked for me was as follows:
1. Open Internet Explorer
2. Go to Settings -> Internet Options -> Connections
3. Click "LAN Settings" button
4. Check "Automatically detect settings" then OK
That cleared up the problem straight away.
I hope this helps.
This is really poor stuf from Apple. iTunes will connect through a non-BT (ie proper) router but when you come to do a system / OS update, Apple servers don't recognise a PC that isn't connected through a standard Windows rubbish connection. It looks like the server doesn't know the difference between PPOA and PPOE, and gives the 3004 error whatever you try and do.
Even if you are connected to iTunes, you CANNOT update an iPad or an iPhone using such a connection, and it is utterly unprofessional that the guys at Apple can't walk through anything but a single lame setup. The hours I have spent trying to sort this out is beyond belief. Throw it away, get an Android, They work.
(I use all devices in my work as a web company CEO, and believe me I know the difference between what works for a consumer and what doesn't).