here is what i did i found that $f(f(0))=f(0)$
i need to prove that f is injective so that $f(0)$ will be equal to $0$
Hence $f(f(x))=xf(0)+f(x)$ so if $f(0)=0$ and $f$ is injective $f(x)=x$ please don't give me the solution , just give me a hint to how to prove that $f$ is injective
Also , i found that $$f(x+f(x))=x+f(x)$$ i don't if that relation means that $f$ is injective
SORRY , GUYS! I FOUND A SOLUTION WITHOUT INJECTIVITY
$x=1$ and $y=0$ yields
$$f(f(1))=f(0)+f(1)$$
Use $f(1)=1$.
Added Setting $y=0$ you get $$f(f(x))=f(x)$$
Next, set $y=\frac{1}{x}$ and use $f(f(x))=f(x)$ and $f(x+1)=f(x)+1$.