The franchise for referendum, promised by the end of 2017, will be based on that for a general election - meaning Irish, Maltese and Cypriots resident in the UK will get a vote, but other EU citizens will not.
Details about the planned public vote were revealed as European Commission President Jean-Claude Juncker was due to hold talks with Mr Cameron at Chequers, the Prime Minister’s country residence.
Legislation for the referendum will be introduced to Parliament on Thursday, the day after the Queen’s Speech.
The Bill will make clear that the franchise will be based on that for a general election, plus members of the House of Lords and Commonwealth citizens in Gibraltar.
British, Irish and Commonwealth citizens over 18 who are resident in the UK will be eligible to vote, as well as UK nationals resident overseas for less than 15 years.
Eurosceptics had claimed that as many as 1.5 million people from other EU countries could have been allowed to vote in the plebiscite if it had taken place under the rules for local government elections, which citizens of other member states can participate in.
Official figures show the total number of UK parliamentary electors in 2014 was 45.3 million while the number of local government electors was 46.8 million.
A Number 10 source said: “No Brit under the age of 58 has had their say on the UK’s membership of the European Union.
“It is time to put this right and to give people the choice - in or out. This is a big decision for our country, one that is about the future of the United Kingdom. That’s why we think it’s important that it is British, Irish and Commonwealth citizens that are the ones who get to decide.”
The meeting with Mr Juncker - whose appointment Mr Cameron publicly opposed - comes at the start of a week which will see a whirlwind tour of European capitals where the Prime Minister will try to build support for his reform agenda.
A source said: “It is an opportunity for the PM to underline why he is doing this and the views of Britain about the EU, the case for renegotiation and not sticking with the status quo.”
The talks are expected to touch on the broad areas where the Prime Minister thinks change is needed and “there will be some discussions about how we taken them forward”, the source said, although the meeting is not expected to go into great depth about the reforms.
Later this week Mr Cameron will fly to Denmark for a working breakfast on Thursday morning with his counterpart Helle Thorning-Schmidt.
He will then travel to the Netherlands to meet Dutch prime minister Mark Rutte before ending the day with talks over dinner at the Elysee Palace with French president Francois Hollande.
On Friday, the Prime Minister will travel to Warsaw for discussions with prime minister Ewa Kopacz in Warsaw before concluding the trip in Berlin where he will hold talks with chancellor Angela Merkel.
The Prime Minister hopes to talk to all other 27 leaders of EU member states individually before the European Council summit at the end of next month.
Tory Eurosceptic Liam Fox gave his backing to Mr Cameron’s plan.
The former defence secretary said: “This is a fitting response by the Government. Allowing EU citizens to vote in our referendum would have been an unacceptable dilution of the voice of the British people.”
But the Government will face attempts to alter the legislation, with the SNP set to argue that 16 and 17-year-olds should be allowed the vote, as they were in the independence referendum in Scotland.
The SNP’s Westminster leader Angus Robertson said: “I don’t agree with having a referendum on EU membership - but if it is to go ahead, then Cameron has a responsibility to help ensure it can be an enriching and open debate. Young people are our future. It is their UK - and their Europe - so they must have their say.”
Writing in the Guardian he also called for a rule that would mean the UK cannot leave the EU unless all voters in all four nations have backed Brexit.
“We will propose a ‘double majority’ rule, meaning that unless England, Scotland, Wales and Northern Ireland each vote to leave the EU, as well as the UK as a whole, Britain would remain a member state.”