근처 부속 섬으로는, 옥금도, 좌도, 진도, 진지도, 해하도, 길마도, 윗돈배섬, 아랫돈배섬, 꼬사리섬, 원주도 등이 있다. 옥금도, 진지도, 원주도를 제외하면 모두 무인도다.
마을로는 북쪽의 외백마을과 남쪽의 내백마을이 있다.
외백마을에 학교가 있어 백일도의 중심지였지만, 현재의 백일도의 중심지는 항구가 있어 여자만으로 나가 일하기 수월한 내백마을이 되었다. 그 학교는 2007년에 폐교되고, 학교 건물이 나무가 울창해서 안 보일 정도로 방치되었다. 그래서 백일도에서 학교에 갈려면 6km쯤 떨어져 있는 과역면이나 남양면의 도심지로 가야 한다.
백일도는 조선시대에 전라좌수영 밑의 여도진에 속하였다. 진이 없어진 뒤에 돌산군 옥정면에 편입되었으며 1914년 행정구역 개편 때 고흥군 남면(현 과역면)에 소속되었다. 조선 후기의 문헌에는 박길도라 하여 흥양현 북쪽 바다에 있으며 섬의 둘레가 50리라 기록되어 있다. 조선조 선조 때부터 영조 때까지 3성이 거주하기 시작하였다. 섬안에 일월명지가 있어 밝고 흰것을 나타낸다는 뜻으로 '해나리'라고 불리다 한자로 백일도라 하였다.