The deal is worth $10.5 million, sources told Jeff Passan of ESPN.
Hand, 30, went unclaimed when placed on waivers by the Cleveland Indians in November. Had a team picked him up at the time, his 2021 contract would have been for $10 million. Cleveland wound up buying out Hand's option, making him a free agent.
Hand has excelled since converting to a full-time reliever in 2016, his first year with the San Diego Padres. He owns a 2.70 ERA and 1.07 WHIP with 104 saves in 320 innings over the last five seasons. He led the majors with 16 saves in the pandemic-shortened 2020 campaign.
It's the latest move in what has been a quietly aggressive offseason in D.C. The Nationals have already traded for first baseman Josh Bell, signed outfielder Kyle Schwarber and starter Jon Lester, and re-signed veteran infielder Ryan Zimmerman.
The New York Mets were reported to be nearing a two-year deal with Hand in mid-January, but it never materialized. The Los Angeles Angels and Toronto Blue Jays were also recently linked to the southpaw.