A boat carrying would-be asylum seekers to Australia sunk in Indonesia waters, and an official said more than 150 survivors have been rescued. At least three people died, but it's unclear how many more may be missing.

The sinking comes just days after Prime Minister Kevin Rudd changed Australia's refugee policy so that people who arrive by boat will no longer be allowed to settle there. The change has drawn sharp criticism from human rights groups.

The boat sank off the West Java district of Cianjur, said Imam, an official from Indonesia's National Search and Rescue Agency, who goes by one name. He said Australian officials alerted Indonesia about the boat Tuesday night.

Rochmali, a rescuer at the scene, said 157 survivors have been rescued and three bodies recovered from the choppy waters near Cidaun, a district town about 40 kilometres south of Cianjur. Two children, ages 1 and 5, were among the dead.

"Some of survivors said there were about 200 people on board, but others said only 160," said Rochmali, who also uses a single name. "But we believe many have survived and run away avoiding authorities."

He said those rescued, mostly from Iran and Iraq, are being sheltered in a nearby village for treatment and identification.

Last week, Indonesia decided to stop issuing visas on arrival to Iranians because a growing number of them were smuggling drugs or using Indonesia as a transit point for seeking asylum in Australia.

Resettled in Papua New Guinea

As of last Friday, Australia said all newly arrived refugees would be resettled in Papua New Guinea, though their claims for asylum still will be assessed in Australia and at Australian detention camps in Papua New Guinea and the tiny island nation of Nauru.

Australia would help genuine refugees settle in Papua New Guinea — a diverse tribal society of more than 800 languages and 7 million people who are mostly subsistence farmers. Those who are found not to be genuine refugees could return to their home countries or another country other than Australia.

Scores of people from war-torn countries use Indonesia as a transit point every year where they board rickety fishing boats bound for Australia's Christmas Island, located 500 kilometres south of Indonesia's capital.

More than 15,000 asylum seekers have arrived in Australia by boat this year. Hundreds have died on the journey.

Rudd said the latest distressed boat highlights the need for the shift in policy.

"Too many innocent people have been lost at sea," he told reporters in Melbourne on Wednesday.

"The asylum seeker policy we've adopted is about sending a very clear message to people smugglers that if you try to come to Australia by boat you will not be settled in Australia… That is all about destroying the people smugglers' business model," Rudd added.