shiranai simply means that I have never seen or heard something.
wakaranai means that I tried to know or understand something, but couldn't.
therefore, shiranai can be used as "I don't know," but not as "I don't understand."
on the other hand, wakaranai can be used as "I don't know," and also as "I don't understand."
but be careful: shiranai sometimes sounds kind of colder than wakaranai.
"watashi no tokei ga doko ni aru ka shirimasen ka?" (Do you know where my lost watch is?)
- "shirimasen" (I don't know, sounds as if "I don't care what happened to you")
- "wakarimasen" (I don't know, sounds like "I wish I could help you, but I don't know about it")
if you don't know which is better, i think wakaranai is often more suitable for many situations than shiranai.