In perlin noise, four pseudo-random unit vectors are placed at each corner of a 1 by 1 square.
Let's denote each pseudo-random vector $\vec{v_1}, \vec{v_2}, \vec{v_3}, \vec{v_4}$ Then, the perlin noise function should look like $[0, 1] \times [0, 1] \mapsto [?, ?]$ (possibly $[-1, 1]$ as the question asks.)
Let $\vec{u} \in [0, 1] \times [0, 1]$, and let $u_1$ and $u_2$ denote the components of this vector.
Let $a_i = \vec{u} \cdot \vec{v_i}$
Suppose the pseudo-random vectors were given in the order top-left, top-right, bottom-left, bottom-right.
Let $l_{ijk} = lerp(a_i, a_j, u_k)$
Where lerp is linear interpolation, such that $f$ is simply bilinearly interpolating.
Then $f(\vec{u}) = lerp(l_{121}, l_{231}, u_2)$
Is this function's range always $\in [0,1]$? When can it be and when can it not? The pseudo-random vectors are always unit vectors.
You're question does not actually define Perlin noise, the inner products should be taken with the offset vectors, not the $\vec{u}$ vector directly. Anywho, the range of two dimensional Perlin noise is actually $[-\sqrt{2}/2,\sqrt{2}/2] \approx[-0.7071,0.7071]$ as is also discussed here.
To somewhat quickly see this, consider the following worst case scenario. Let $v_1, v_2, v_3, v_4$ be the top left, top right, bottom left, and bottom right vectors respectively, and point them all inwards to the middle of the square. That is: $$v_1 = \tfrac{1}{\sqrt{2}}(1,-1), v_2 = \tfrac{1}{\sqrt{2}}(-1,-1), v_3=\tfrac{1}{\sqrt{2}}(1,1), v_4 = \tfrac{1}{\sqrt{2}}(-1,1).$$ Now consider the value of the Perlin noise smack in the middle, $u = (0.5,0.5)$. We first calculate the relevant dot products $a_i = v_i \cdot o_i$ with the offset vectors $o_i$: $$a_1 = \tfrac{1}{\sqrt{2}}(1,-1) \cdot (0.5,-0.5) = \tfrac{1}{\sqrt{2}} \\ a_2 = \tfrac{1}{\sqrt{2}}(-1,-1) \cdot (-0.5,-0.5) = \tfrac{1}{\sqrt{2}}\\ a_3 = \tfrac{1}{\sqrt{2}}(1,1) \cdot (0.5,0.5) = \tfrac{1}{\sqrt{2}}\\ a_4 = \tfrac{1}{\sqrt{2}}(-1,-1) \cdot (-0.5,-0.5) = \tfrac{1}{\sqrt{2}}. $$ We perform the bilinear interpolation to get a final value $f$ of: $$f = \tfrac{1}{2}(\tfrac{1}{2}a_1+\tfrac{1}{2} a_2) + \tfrac{1}{2}(\tfrac{1}{2}a_3 + \tfrac{1}{2}a_4) = \tfrac{1}{\sqrt{2}} = \tfrac{\sqrt{2}}{2}.$$ I understand that this is not a full proof, but I hope it seems somewhat natural that this is the worst case scenario: all the vectors conspire to make the value in the middle of the square as big as possible.