Hello, Moha!
Your problem is similar to my.
So, you should find out dns server names from your host os and manually set them in guest os.
From my experience, to find out your dns servers names in windows you should use commands
nslookup
<or>
ipconfig /all
Then, you must set them up in guest system. In linux os, dns are situated in /etc/resolv.conf (you can read man page on it). Also in ubuntu there is gui for setting up network - network-manager (in fedora - i don't know). If you set up them correctly, network would work.
But there is another problem: /etc/resolv.conf is changing every reconnect, if you use dhcp. This causes dns server names to be rewritten every reconnect.
I've found different decisions of this problem (such as using /etc/resolv.conf.tail and .head; changing user privilegies on /etc/resolv.conf; also i tried to configure dhcp properly:)), but i can't still get my network work properly on every reboot of my guest. Howewer, it doesn't strongly worry me, because it tooks about minute to set up net on guest and i reboot very rarely
So, if you find the decision of last problem (my guests are also *buntu), let me know, please.