[proofplan]
We prove each of the three assertions separately. The open set inequality follows by approximating $\mathbb{1}_U$ from below by compactly supported continuous functions and passing to the limit. The compact set inequality is obtained by approximating $\mathbb{1}_K$ from above by continuous functions supported in shrinking open neighborhoods. The convergence $\mu_k(A) \to \mu(A)$ for sets with $\mu(\partial A) = 0$ follows by squeezing $A$ between its interior and closure, where both carry the same $\mu$-mass due to the vanishing boundary measure.
[/proofplan]
[step:Prove the open set inequality: $\mu(U) \leq \liminf_{k \to \infty} \mu_k(U)$ for $U$ open]
Let $U \subset \mathbb{R}^n$ be open. For each compact set $K \subset U$, [Urysohn's Lemma](/theorems/???) provides a function $f_K \in C_c(\mathbb{R}^n)$ with $0 \leq f_K \leq 1$, $f_K = 1$ on $K$, and $\operatorname{supp}(f_K) \subset U$. Since $\mu_k \overset{*}{\rightharpoonup} \mu$ and $f_K \in C_c(\mathbb{R}^n)$,
\begin{align*}
\mu(K) \leq \int_{\mathbb{R}^n} f_K \, d\mu = \lim_{k \to \infty} \int_{\mathbb{R}^n} f_K \, d\mu_k \leq \liminf_{k \to \infty} \mu_k(U),
\end{align*}
where the first inequality uses $f_K \geq \mathbb{1}_K$ and the positivity of $\mu$, and the last inequality uses $f_K \leq \mathbb{1}_U$ so that $\int f_K \, d\mu_k \leq \mu_k(U)$ for every $k$.
Taking the supremum over all compact $K \subset U$ and applying inner regularity of the Radon measure $\mu$ ([Inner and Outer Regularity of Radon Measures](/theorems/3011)) gives
\begin{align*}
\mu(U) = \sup\{\mu(K) : K \subset U, \; K \text{ compact}\} \leq \liminf_{k \to \infty} \mu_k(U).
\end{align*}
[guided]
The idea is to approximate the indicator function $\mathbb{1}_U$ from below. We cannot test weak-$*$ convergence directly against $\mathbb{1}_U$ because indicator functions are not continuous. Instead, we insert a continuous function $f_K$ that satisfies $\mathbb{1}_K \leq f_K \leq \mathbb{1}_U$. The weak-$*$ convergence gives us $\int f_K \, d\mu_k \to \int f_K \, d\mu$, and the chain of inequalities $\mu(K) \leq \int f_K \, d\mu$ and $\int f_K \, d\mu_k \leq \mu_k(U)$ does the rest.
Why do we get only $\liminf$ and not $\lim$? Because we approximated $\mathbb{1}_U$ from below by compactly supported functions. Each $f_K$ lies strictly below $\mathbb{1}_U$ (in the sense that its support is a compact subset of $U$, not all of $U$). The limit inferior captures the worst-case behavior over the sequence. This one-sided inequality is inherent in weak-$*$ convergence: mass can "leak out" of an open set in the limit, so $\mu(U)$ can be strictly smaller than $\lim \mu_k(U)$.
[/guided]
[/step]
[step:Prove the compact set inequality: $\mu(K) \geq \limsup_{k \to \infty} \mu_k(K)$ for $K$ compact]
Let $K \subset \mathbb{R}^n$ be compact. For each $\varepsilon > 0$, define the open $\varepsilon$-neighborhood $V_\varepsilon = \{x \in \mathbb{R}^n : \operatorname{dist}(x, K) < \varepsilon\}$. Choose $g_\varepsilon \in C_c(\mathbb{R}^n)$ with $0 \leq g_\varepsilon \leq 1$, $g_\varepsilon = 1$ on $K$, and $\operatorname{supp}(g_\varepsilon) \subset V_\varepsilon$ (this exists by [Urysohn's Lemma](/theorems/???) since $K$ and $\mathbb{R}^n \setminus V_\varepsilon$ are disjoint closed sets with $K$ compact). Since $g_\varepsilon \geq \mathbb{1}_K$, we have $\mu_k(K) \leq \int g_\varepsilon \, d\mu_k$ for every $k$. By weak-$*$ convergence,
\begin{align*}
\limsup_{k \to \infty} \mu_k(K) \leq \lim_{k \to \infty} \int_{\mathbb{R}^n} g_\varepsilon \, d\mu_k = \int_{\mathbb{R}^n} g_\varepsilon \, d\mu \leq \mu(V_\varepsilon).
\end{align*}
As $\varepsilon \to 0^+$, $V_\varepsilon \searrow K$ (since $K$ is closed and $\bigcap_{\varepsilon > 0} V_\varepsilon = K$). Since $V_1$ is bounded (having compact closure), $\mu(V_1) < \infty$ by local finiteness of Radon measures. Continuity of measure from above (applied to the nested sequence $V_{1/m} \searrow K$ with $\mu(V_1) < \infty$) gives $\lim_{\varepsilon \to 0^+} \mu(V_\varepsilon) = \mu(K)$. Therefore
\begin{align*}
\limsup_{k \to \infty} \mu_k(K) \leq \mu(K).
\end{align*}
[/step]
[step:Prove convergence $\mu_k(A) \to \mu(A)$ when $\mu(\partial A) = 0$]
Let $A$ be a Borel set with $\mu(\partial A) = 0$. Write $A^\circ$ for the interior and $\overline{A}$ for the closure of $A$. Since $A^\circ \subset A \subset \overline{A}$ and $\overline{A} \setminus A^\circ = \partial A$, we have
\begin{align*}
\mu(A^\circ) \leq \mu(A) \leq \mu(\overline{A}) = \mu(A^\circ) + \mu(\partial A) = \mu(A^\circ),
\end{align*}
so $\mu(A^\circ) = \mu(A) = \mu(\overline{A})$.
**Lower bound.** The set $A^\circ$ is open. By the open set inequality,
\begin{align*}
\mu(A) = \mu(A^\circ) \leq \liminf_{k \to \infty} \mu_k(A^\circ) \leq \liminf_{k \to \infty} \mu_k(A),
\end{align*}
where the last inequality uses $A^\circ \subset A$.
**Upper bound.** For each $R > 0$, the set $K_R = \overline{A} \cap \overline{B}(0, R)$ is compact (as a closed subset of the compact ball $\overline{B}(0, R)$). By the compact set inequality,
\begin{align*}
\limsup_{k \to \infty} \mu_k(A \cap \overline{B}(0, R)) \leq \limsup_{k \to \infty} \mu_k(K_R) \leq \mu(K_R) \leq \mu(\overline{A}).
\end{align*}
Since $\mu_k(A) = \lim_{R \to \infty} \mu_k(A \cap \overline{B}(0, R))$ by continuity of measure from below, and the right-hand side $\mu(\overline{A})$ is independent of $R$, we obtain $\limsup_{k \to \infty} \mu_k(A) \leq \mu(\overline{A}) = \mu(A)$.
Combining the two bounds:
\begin{align*}
\mu(A) \leq \liminf_{k \to \infty} \mu_k(A) \leq \limsup_{k \to \infty} \mu_k(A) \leq \mu(A),
\end{align*}
so $\mu_k(A) \to \mu(A)$.
[guided]
The condition $\mu(\partial A) = 0$ is exactly what makes the squeeze work. The set $A$ is sandwiched between $A^\circ$ (open, where we have the $\liminf$ inequality) and $\overline{A}$ (whose compact truncations give the $\limsup$ inequality). The boundary $\partial A = \overline{A} \setminus A^\circ$ is where the approximation of $\mathbb{1}_A$ by continuous functions is ambiguous. When $\mu(\partial A) = 0$, we have $\mu(A^\circ) = \mu(A) = \mu(\overline{A})$, so the ambiguity on the boundary does not affect the $\mu$-measure, and the squeeze closes.
Without the condition $\mu(\partial A) = 0$, the conclusion can fail. For instance, let $\mu_k = \delta_{1/k} \overset{*}{\rightharpoonup} \mu = \delta_0$ and take $A = (0, 1]$. Then $\partial A = \{0, 1\}$ and $\mu(\partial A) = \delta_0(\{0\}) = 1 \neq 0$. We have $\mu_k(A) = 1$ for all $k$ but $\mu(A) = 0$, so $\mu_k(A) \not\to \mu(A)$.
[/guided]
[/step]