Upper bound for the Hausdorff dimension is often easy, from the definition.
Lower bound can be harder. One method can be used if you have a measure on your set. Even better, a measure that naturally fits with the structure of the set. Then lower bounds for the Hausdorff dimension come from density computations for that measure.
(Would citing my own book here be considered crass?)
Packing dimension may be opposite. The lower bound is easy from the definition, but the upper bound harder. Again a density with respeact to a measure can help with this upper bound.
added March 4
This density theorem is found in: G. Edgar, Integral, Probability, and Fractal Measures (Springer 1998) Theorem 1.5.14, p. 52.
Definitions ... Let $E \subseteq \mathbb{R}^n$ be a Borel set, let $\mu$ be a nonzero measure
on $E$, let $s>0$ be a real number. Write
$$
B_r(x) = \{y \in E \colon |y-x|\le r\}
$$
for a closed ball. The upper $s$-density of $\mu$ at a point
$x \in \mathbb{R}^n$ is
$$
\overline{D}^s_\mu(x) = \limsup_{r \to 0} \frac{\mu(B_r(x))}{(2r)^s} .
$$
A consequence of Theorem 1.5.14 is then: If
$\sup_{x \in E} \overline{D}^s_\mu(x) < \infty$, then the Hausdorff dimension
of $E$ is at least $s$.