IP or RIP (depending on whether we are on a 32-bit or a 64-bit platform) means addressing relative to the instruction pointer register.
The best example of this addressing mode would be the call and jmp instructions. For example, consider the following code:
call my_proc
; or
jmp some_label
This will not contain the addresses of my_proc or some_label. Instead, the call instruction would be encoded in such a way that its parameter would be the offset from the following instruction to my_proc. As we know, the instruction pointer register contains the address of the following instruction at the time the processor executes the current one; therefore, we may surely say that the target address is calculated relative to the value of the instruction pointer (IP on 32-bit or RIP on 64-bit platform).
The same rule applies to the jmp instruction in the preceding example--the target address is calculated relative to the current value of the instruction pointer, which contains the address of the following instruction.