Find all functions of the form $f(x)=\frac{b}{cx+1}$ where $f(f(f(x)))=x .$ This is a very interesting word problem that I came across in an old textbook of mine. So I know its got something to do with functions and polynomials, but other than that, the textbook gave no hints really and I'm really not sure about how to approach it. Any guidance hints or help would be truly greatly appreciated. Thanks in advance :) So anyway, here the problem goes:

Find all functions of the form
$$f(x)=\frac{b}{cx+1}$$
where $b,c$ are integers and, for all real numbers $x$ such that $f(f(f(x)))$ is defined, the following equation holds:
$$f(f(f(x)))=x .$$

So I tried to make the substitutions yielding:
$$\frac{b}{c(\frac{b}{c(\frac{b}{cx+1})+1})+1}=x.$$
and then I simplified to:
$(bc+1)(cx^2+x-b)=0$.
However, I'm not sure if this is correct, and even so, I'm not sure how to approach the problem from here.
 A: If $b=0$ or $c=0$ the function $f(x):={b\over cx+1}$ is constant, hence cannot satisfy $f^{\circ3}={\rm id}$. If $bc\ne0$ then $f$ is a Moebius transformation with matrix
$$\left[\matrix{0& b\cr c&1\cr}\right]\ .$$
The map $f^{\circ3}$ then has matrix
$$\left[\matrix{0& b\cr c&1\cr}\right]^3=\left[\matrix{bc& b(bc+1)\cr c(bc+1)&2bc+1\cr}\right]\ .$$
The condition $f^{\circ3}={\rm id}$ means that the last matrix should be a nonzero multiple of the identity matrix. This enforces $bc=-1$, and it is easily seen that $bc=-1$ is also sufficient. When $b$ and $c$ have to be integers then only the cases $b=-c=\pm1$ remain.
A: Plug $x=0:$
$$f(f(f(0)))=\frac{b(bc+1)}{2bc+1}=0 \Rightarrow b=0 \ \ or \ \ \ bc=-1.$$
However, $b=0$ does not suit.
A: Note that the condition $f(f(f(x)))=x$ is equivalent to $f(f(x))=f^{-1}(x)$ (assuming of course that $f$ is invertible). Then you just calculate $f(f(x))$ and $f^{-1}(x)$ and then solve for $b$ and $c$.
A: By the way, $$f(f(f(x)))=x$$ it's
$$\frac{b(bc+1+cx)}{(c^2b+c)x+2bc+1}=x,$$ which gives
$b(bc+1)=0$, $c(bc+1)=0$ and $bc+1=0$, which gives $bc+1=0$.
And indeed, $f(x)=\frac{b^2}{b-x}$ for $b\neq0$ works.
