Well, since the 9 color is satisfied by the hexagonal grid as well as by the rectangular grid, I'll just answer for the hexagonal grid. Color it this way:
Place a hexagon of color 1.
Place hexagons of colors 2-7 around the first hexagon.
Tile the resulting shape as demonstrated here:
http://img235.echo.cx/my.php?image=hexgrid24xd.png
Vertexes represent hexagons. The red-boxed hexagon is the starting hexagon. It can be seen that every color in a tiled block of 7 colors in the middle of the grid is surrounded by the 6 other colors, therefore if the tiling--each tile is 7 hexagonal blocks as boxed in indigo--is continued infinitely this will also be the case.
This satisfies the condition because if the hexagons are regular and A is just longer than a diagonal of the hexagon, then the two points at the endpoints of the segment of length A must land in two hexagons that are either neighbors or have 1 hexagon between them. Because of the tiling, this ensures that the endpoints are always of different colors (it is easily seen from the grid, and presumably easily proven, that hexagons of the same color always have at least 2 other hexagons between them).
Actually, there probably is a way to color the plane using 4 colors so that there is a length where every pair of points that length apart are different colors. This follows from the four-color theorem, since a length A in the plane defines a graph, and every graph can be colored with 4 colors so that you have no vertices with adjacent colors. Of course this is not a certain argument, because the length defines an infinitely fine graph.