this is exercise (52), part (d) of [real analysis, Folland]. actually this exercise is:
$\color{red}{\textbf{problem:}}\,$
Let $X$ be a Banach space and let $f_1, ...,f_n$ be linearly independent elements of $X^*$.
$\color{red}{\textbf{(a)}}\;$Define $f:X\rightarrow \mathbb{C}^n$ by $Tx=\Big(f(x_1),...,f(x_n)\Big)$. if $N=\{x|Tx=0\}$ and $M$ is linear span of $f_1,...,f_n$, then $M=N^0$, where $N^0=\Big\{f\in X^*\Big|\; f|_N=0\Big\}$ and $M$ is isomorphic with $\big(\frac{X}{N}\big)^*$.
$\color{red}{\textbf{(b)}}\;$ if $F\in X^{**}$, for eny $\epsilon>0$, there exists $x\in X$ such that for $j=1,...,n$, we have $F(f_j)=f_j(x)$ and $\|x\|\leq (1+\epsilon)\|F\|$.
$\vdots$
$\color{red}{\textbf{(d)}}\;$ in the weak$^*$ topology on $X^{**}$, the closed unit ball in $X$ is dense in the closed unit ball in $X^{**}$.
$\color{black}{\textbf{Before the proof, we prove this lemma:}}\;$
$\color{blue}{\textbf{ lemma:}}\;$
$\color{blue}{\textbf{(a)}}\;$
Suppose that $X$ and $Y$ are normed vector spaces and $T\in\mathscr{B}(X,Y)$. define $T^{\dagger}:\underset{f\longrightarrow f\circ T}{Y^*\rightarrow X^*}$. then $T^{\dagger}\in\mathscr{B}(Y^{\dagger},X^{\dagger})$ and $\|T^{\dagger}\|=\|T\|$.
$\color{blue}{\textbf{(b)}}\;$ Suppose $X$ is a Banach space and $N$ is a proper closed subspace of $X$ and $\pi:X\rightarrow\frac{X}{N}$ be quotient map. then $\pi^{\dagger}:\big(\frac{X}{N}\big)^*\rightarrow X^*$ is an isometric isomorphism from $ \big(\frac{X}{N}\big)^* $ onto $N^0$, where $\frac{X}{N}$ has the quotient map norm.
$\color{blue}{\textbf{proof of (a):}}\;$
$\|T^{\dagger}f\|=\|f\circ T\|\leq \|T\|\|f\|$
so $\|T^{\dagger}\|\leq\|T\|$.
on the other hand,
by Hahn Banach theorem, for every $x\in X$ such that $Tx\neq 0$, there exists $f_x\in X^*$ such that $f_x(Tx)=\|Tx\|$ and $\|f_x\|=1$. therefore,
\begin{align}
\|T\|&=\underset{\|x\|=1}{\sup}\|Tx\|\\&=\underset{\underset{\|Tx\|\neq 0}{\|x\|=1}}{\sup}\|Tx\|\\&= \underset{\underset{\|Tx\|\neq 0}{\|x\|=1}}{\sup}|f_x(Tx)| \\&=\underset{\underset{\|Tx\|\neq 0}{\|x\|=1}}{\sup}|f_x\circ T(x)|
\end{align}
and this implies
\begin{align}
\|T^{\dagger}\|&=
\underset{\|f\|=1}{\sup}\|T^{\dagger}f\|\\&=
\underset{\|f\|=1}{\sup}\|f\circ T\|\\&=
\underset{\|f\|=1}{\sup} \underset{\|x\|=1}{\sup}|f\circ T(x)|\\&=
\underset{\|f\|=1}{\sup} \underset{\underset{\|Tx\|\neq 0}{\|x\|=1}}{\sup}|f\circ T(x)| \\&\geq
\underset{\underset{\|Tx\|\neq 0}{\|x\|=1}}{\sup}|f_x\circ T(x)|\\&=
\|T\|
\end{align}
thus, $ \|T^{\dagger}\|\geq \|T\| $ and hence
$\|T^{\dagger}\|=\|T\|$.
$\color{blue}{\textbf{proof of (b):}}\;$
by
Norm of the quotient map for a normed space
we know that $\|\pi\|=1$. thus $\|\pi^{\dagger}\|=1$. therefore $\|\pi^{\dagger}f\|\leq\|f\|$. on the other hand
$\|f\|=\underset{\|x+N\|<1}{\sup}f(x+N)$
but by definition of norm of quoutient space, there exists $n\in N$ such that
$\|x+n\|<1$. also for every $\epsilon>0$, there exists some $x\in X$ such that
$ \|f\|-\epsilon<\|x+N\| $
therefore
\begin{align}
\|f\|-\epsilon&<
f(x+N)\\&=
f\big((x+n)+N\big)\\&\leq
\underset{\|x\|<1}{\sup}f(x+N)\\&=
\underset{\|x\|<1}{\sup}f(\pi(x))\\&=
\underset{\|x\|<1}{\sup}f\circ \pi(x)\\&=
\|f\circ\pi\|\\&=
\|\pi^{\dagger}(f)\|
\end{align}
so $\|f\|\leq\|\pi^{\dagger}(f)\|$ and hence
$\|\pi^{\dagger}(f)\|=\|f\|$.
$\color{red}{\textbf{proof of (a):}}\;$
$M\subseteq N^{0}$ is obvious. we prove $N^{0}\subseteq M$.
for $n=1$, this proved by this link:
$\ker T\subset \ker S\Rightarrow S=rT$ when $S$ and $T$ are linear functionals
Now, assume $n>1$. for $j=1,...,n$, let $N_j=\{x|f_j(x)=0\}$. then $N=\underset{j=1}{\overset{n}{\bigcap}}N_j$. since $\{f_1,...,f_n\}$ are linearly independent, from above link, for any $j=1,...,n$, we have $N_j\subsetneqq\underset{\underset{i\neq j}{i=1}}{\overset{n}{\bigcap}}N_i$. so for every $j=1,...,n$, there exists $x_j\in \underset{\underset{i\neq j}{i=1}}{\overset{n}{\bigcap}}N_i$ such that $x_j\notin N_j$ and since the sets $\{N_j\}$ are vector spaces, we can choose $x_j$ such that $f_i(x_j)=\delta_{ij}$, where $\delta_{ij}$ is the kronocker delta.
The set $\{x_1,...,x_n\}$ is linearly independent, for if $c_1x_1+...+c_nx_n=0$, then $c_i=f_i(c_1x_1+...c_nx_n)=0$.
Now, if $\{v_{\alpha}\}_{\alpha\in\mathcal{A}}$ be a basis for $N$, then $\Big(\{v_{\alpha}\}_{\alpha\in\mathcal{A}}\Big)\bigcup\Big(\{x_1,...,x_n\}\Big)$ is a basis for $X$, for if $x\in X$, then
$x-\Big(f_1(x)x_1+...f_n(x)x_n\Big)\in N$$\qquad\qquad(*)$
Now, let $f\in N^0$ and $x\in X$. from relation $(*)$ in above, we have $x= \Big(f_1(x)x_1+...f_n(x)x_n\Big)+n$, where $n\in N$. so $f(x)=f(x_1)f_1(x)+...+f(x_n)f_n(x)\in M$
then $M=N^0$.
$\color{red}{\textbf{proof of (b):}}\;$
by above lemma, the quotient map $\pi:X\rightarrow\frac{X}{N}$, induce the isometric isomorphism map
$\pi^{\dagger}:\underset{\Lambda\xrightarrow{\hspace{.7cm}} \Lambda\circ\pi}{\big(\frac{X}{N}\big)^*\rightarrow N^{\circ}}=M$
also, the map $ \pi^{\dagger} $, induce the map
$(\pi^{\dagger})^{\dagger}:M^*\rightarrow \big(\frac{X}{N}\big)^{**}\color{red}{=}\widehat{(\frac{X}{N})}$
equality in red holds, because $\big(\frac{X}{N}\big)^*\cong M$ and $M$ is finite dimentional. thus $\big(\frac{X}{N}\big)^*$ is finite dimentional and hence is reflexive and by
A Banach space is reflexive if and only if its dual is reflexive
$\frac{X}{N}$ is reflexive.
Now, since $F\in X^{**}$, we have $F|_M\in M^*$. thus
$F|_M\circ\pi^{\dagger}=(\pi^{\dagger})^{\dagger}(F|_M)\in\big(\frac{X}{N}\big)^{**}= \widehat{(\frac{X}{N})} $
thus, there exist $x'\in X$, such that
$F|_M\circ\pi^{\dagger}= \widehat{x'+N} $
Now, let $f_j\in\{f_1,...,f_n\}\subseteq M$. then there exists $\Lambda\in{\big(\frac{X}{N}\big)^*}$ such that $\pi^{\dagger}(\Lambda)=f_j$.
Now, we have
\begin{align}
F(f_j)&=F|_M(f_j)\\&=
F|_M(\pi^{\dagger}(\Lambda))\\&=
F|_M\circ\pi^{\dagger}(\Lambda)\\&=
\widehat{x'+N}(\Lambda)\\&=
\Lambda(x'+N)\\&=
\Lambda(\pi(x'))\\&=
\Lambda\circ\pi(x')\\&=
(\pi^{\dagger}(\Lambda))(x')\\&=
f_j(x')
\end{align}
Now, if $\|x'+N\|+\epsilon\|F\|$, then there exists $n\in N$ such that $\|x'+n\|<\|x'+N\|+\epsilon\|F\|$.
so
\begin{align}
\|x'+n\|&
<\|x'+N\|+\epsilon\|F\|\\&
=\|\widehat{x'+N}\|+\epsilon\|F\|\\&
=\|F|_M\circ \pi^{\dagger}\|+\epsilon\|F\|\\&
\leq\|F|_M\|.\|\pi^{\dagger}\|+\epsilon\|F\|\\&
\leq\|F\|+\epsilon\|F\|\\&
=(1+\epsilon)\|F\|
\end{align}
since $\|\pi^{\dagger}\|=1$.
Now, if choose $x=x'+n$, since
$f_j(x)=f_j(x')=F(f_j)$
then $\color{red}{\text{(b)}}$ is proved.
$\color{red}{\textbf{proof of (d):}}\;$
if we denote the closed unit ball in $X$ with
$B=\big\{x\in X\big|\,\|x\|\leq 1\big\}$
and the closed unit ball in $X^{**}$ with
$B^{**}=\big\{F\in X^{**}\big|\,\|F\|\leq 1\big\}$
we have to prove that $\overline{\widehat{B}}=B^{**}$. it is clear that $\widehat{B}\subseteq B^{**}$ and since by Banach–Alaoglu theorem,
$ B^{**} $ is weak$^*$-compact, then $\overline{\widehat{B}}\subseteq \overline{B^{**}}=B^{**}$. we have to prove $ B^{**}\subseteq \overline{\widehat{B}}$. for proof, it is suffice to show $(B^{\circ})^{**} \subseteq\overline{\widehat{B}} $, where
$(B^{\circ})^{**}=\big\{F\in X^{**}\big|\,\|F\|<1\big\}$
Now, if $F\in (B^{\circ})^{**}$, we construct a net $\widehat{x}_{U}\in \overline{\widehat{B}} $ such that
$\widehat{x}_{U}\overset{weak^*}{\xrightarrow{\hspace{.9cm}}}F$
if we consider all finite subsets of $X^*$ with $\mathscr{F}$. let for every $U,V\in \mathscr{F}$, define the relation $U\leq V$ if $U\subseteq V$. then $(\mathscr{F},\leq)$ is a directed set.
but by $\color{red}{\textbf{(b)}}$, for every finite set $U\in\mathscr{F}$, there exists $x_U\in X$ such that
$\|x_U\|\leq (1+\epsilon)\|F\|$
and since $\|F\|< 1$, if we choose $\epsilon>0$ such that $(1+\epsilon)\|F\|<1$, then $\|x_U\|< 1$.
Now, we know
$\widehat{x}_{U}\overset{weak^*}{\xrightarrow{\hspace{.9cm}}}F\quad$ iff $\quad\widehat{x_U}(f)\longrightarrow F(f)\quad (\forall f\in X^*)$
so if $f\in X^*$, for every $U\geq\{f\}$, by $\color{red}{\textbf{(b)}}$, we have $f(x_U)=F(f)$ and hence $\widehat{x_U}(f)\longrightarrow F(f) $. so
$\widehat{x}_{U}\overset{weak^*}{\xrightarrow{\hspace{.9cm}}}F$
and $\color{red}{\textbf{(d)}}$ is proved.
$\textbf{REMARK:}$ note that it seems, this problem is true in every normed vector space, since we did not use Banach space property in the proof.