Iran's President Hassan Rouhani has warned that the country will retaliate after an attack last week that damaged one of its oil tankers in the Red Sea, saying evidence suggested it was the work of a government not a terrorist group.