Five US soldiers have been
killed by a fellow soldier at their base in Baghdad, according to the US military.
The incident occurred at Camp Liberty near Baghdad's international arport at around 2pm local time on Monday.
A US defence official in Washington said at least two others were wounded.
He said the dead were all US personnel but could not confirm that they were all military service members.
"The shooter is a US soldier and he is in custody," Marine Corps Lieutenant Tom Garnett, a US military spokesman in Iraq, said.
The soldier is suspected of opening fire on a Camp Liberty counseling clinic for troops suffering from war-related stress.
Bryan Whitman, a Pentagon spokesman, said that the case is under investigation.
Robert Gates, the US defense secretary, voiced "horror and deep regret" over the incident.
"If the preliminary reports are confirmed, such a tragic loss of life at the hands of our own forces is a cause for great and urgent concern," Gates said.
Earlier a spokesman for Barack Obama, the US president, said the president was "saddened" and "shocked" by the incident.
The shooting was the highest death toll for US military personnel in a single attack since April 10, when a suicide blast killed five US soldiers near a police headquarters in the northern city of Mosul.
There have been a number of previous incidents in which US soldiers have attacked their colleagues in Iraq.
The last such report was on September 14 when US sergeant Joseph Bozicevich shot dead two of his superiors at a base south of the capital.
Police officer killed
In another incident, a senior Iraqi traffic officer was killed on Monday morning on his way to work in Baghdad.
It was the second attack on a high-ranking traffic police officer in the capital in as many days.
Violence has dropped sharply in Iraq but violent attacks continue.
A string of recent bombings has raised questions about security less than two months before US forces are due to withdraw combat troops from urban bases.
Monday's attack brought to 4,292 the number of American losses since the US-led invasion of Iraq in March 2003.
Camp Liberty is the US military's largest base in Iraq.