"Apparently, he walked down the hallway shooting and then he entered a classroom, he shot several students and a teacher, then himself," said Roman Stately, of the Red Lake Fire Department, who arrived at the high school moments after the shots rang out.
The boy had taken the service weapon of his grandfather, who was a policeman. He killed two girls and one other boy as well as himself, a female teacher and a male security guard.
About 14 students were injured, including two critically, according to Paul Mc Cabe, a spokesman for the FBI in Minneapolis.
The school was evacuated after the shootings and locked down for investigation, Mr McCabe said. "It will probably take us throughout the night to really put the whole picture together," he said.
He refused to be drawn on a motive for the killings, telling a news conference: "It is too early in the investigations. This is a fluid investigation. Right now there is still a lot of work to do. We're still clearing the school as a safety precaution even though we believe the shooter is among the dead."
The death scene is on the reservation of the Red Lake band of Chippewa Indians. The Red Lake Net News, a website supported by the tribe, said the killer's grandfather was Daryl "Dash" Lussier, a veteran law enforcement officer for the Red Lake police department.
Mr Lussier and his wife, who was not identified, were at home in the Back of Town area in Red Lake when they were shot, the Net News reported.
American Indian Movement leader Clyde Bellecourt said: "A lot of it's still second-hand, and sketchy." He told the Minneapolis Star-Tribune: "Nobody has a clear idea of what exactly happened. The first report was that a student drove his car right into the school building, got out and shot a guard."
He said he was told the gunman shot at least one teacher and three students before turning the gun on himself.
"A grandmother of one of the students called to say her grandson was shot," Mr Bellecourt said. "She was crying the whole time."
Yesterday's shooting was the second major school shooting in Minnesota in recent years. In September 2003, two students were shot at Rocori high school in central Minnesota.
Aaron Rollins, 17, and Seth Bartell, 14, both died from their wounds - Rollins that day and Bartell 16 days later. Fellow student John Jason McLaughlin, 15 at the time of the shootings, awaits trial in the case.
It also comes after two other high profile shootings, one involving a suspected rapist who killed several people in an Atlanta courtroom.
And the other, which occurred just two days later, involved a church just outside of Milwaukee.