A week after staying seated during The Star-Spangled Banner, the San Francisco 49ers quarterback kneeled during the anthem before a match on Thursday.
Team-mate Eric Reid also protested, but they were booed by some in the crowd.
Kaepernick was joined by a former soldier who he met before the game.
Nate Boyer, a former staff sergeant with the US Army Special Forces, or the Green Berets, wrote an open letter to the quarterback last week.
While some have criticised Kaepernick, calling him unpatriotic and disrespectful of those willing to die for their country, other in the military have pledged their support online using the hashtag #VeteransForKaepernick.
“Even though my initial reaction to your protest was one of anger, I’m trying to listen to what you’re saying and why you’re doing it,” Mr Boyer wrote in his letter.
“There are already plenty people fighting fire with fire, and it’s just not helping anyone or anything. So I’m just going to keep listening, with an open mind.”
Kaepernick invited Mr Boyer to join him at the game against the San Diego Chargers after the two met earlier on Thursday. Mr Boyer stood for the anthem as Kaepernick kneeled in protest.
Kaepernick said he will continue to sit out the national anthem until he sees improvements in US race relations. On Thursday, he pledged to donate $1m (£753,000) to community organisations.
The 28-year-old stirred controversy last Friday when he sat during the national anthem before the San Francisco 49ers played the Green Bay Packers in an exhibition game.
‘Issues we need to deal with’
Racial tensions are mounting in the US, where a string of recent police killings and subsequent revenge killings have sparked protests across the nation.
After the pre-season game in San Diego, he said he loved America, and respected the military.
“The message is that we have a lot of issues in this country that we need to deal with,” Kaepernick said. “We have a lot of people that are oppressed. We have a lot of people that aren’t treated equally, that aren’t given equal opportunities.”
Republican presidential candidate Donald Trump criticised the player earlier in the week, saying: “I think it’s a terrible thing, and you know, maybe he should find a country that works better for him.
“Let him try. It won’t happen.”
Also on Thursday, Seattle Seahawks player Jeremy Lane sat during the national anthem before a game in Oakland, but he has not elaborated on his reasons for doing so.