Keppel served on HMS Sultan in the British Mediterranean Fleet until 1878 and was then transferred as midshipman to HMS Black Prince, the world's second ship with an iron hull. He was aboard on HMS Wolverine in Sydney in the next year and was with HMS Inconstant in Asia until 1882. Keppel served as midshipman on HMS Inconstant during the 1882 Egypt campaign. At the time of the outbreak of the Mahdist War, he moved to HMS Duke of Wellington, the Commander-in-Chief's flagship in Portsmouth, then to HMS Iris, one of the first all steel ships, until 1884. In December 1884 Keppel was appointed to the 2nd Division of the Naval Brigade under Sir Charles Beresford serving on the Nile for the relief of Khartoum. As such, he was with Beresford on the Nile paddle gunboat Safia which had to run upriver to rescue Sir Charles Wilson and the men with him from the wrecked gunboat Talahawijeh and the Bordein, the latter having grounded on Mernat island during its return run from Khartoum. It was during this journey that Wilson had established that Khartoum had fallen to the Mahdi and that, in all probability, Gordon was already dead. Keppel was slightly wounded in the successful but dangerous and arduous attempt to rescue Wilson and his men and get them back to the British base at Metemma; he was highly commended for his conduct and promoted to lieutenant. A year later, Keppel was appointed equerry and flag lieutenant to Alfred, Duke of Saxe-Coburg and Gotha until 1893 and was then transferred to HMS Pearl. He was with HMY Royal George in Portsmouth until 1895, became afterwards commander and sailed with HMS Skipjack to Gibraltar and with the torpedo gunboat to Crete in 1897.
In October 1897, on loan to the Egyptian Government, Keppel commanded three gunboats on the Nile, which were despatched from the town of Berber, recently captured by British forces commanded by Herbert Kitchener, south to attack Metemmeh on the Nile, which was held by Dervishes. At dawn on 16 October the ships attacked enemy troops at Shendi, before shelling three forts on the bank of the Nile near Metammeh, capturing some ships loaded with grain and then retiring. They returned the following day to discover the defences had been reinforced with more artillery, but continued the bombardment from beyond range of the enemy guns. Estimated Arab losses were 500 men, with one Soudanese soldier being killed on one of the gunboats. Keppel eventually commanded the entire Nile gunboat flotilla and played a major part in the successful British advance along the Nile, leading to the overwhelming victory at Omdurman and the occupation of Khartoum in September 1898. As a reward for his service with the gunboats, Keppel was decorated with the Distinguished Service Order and appointed Companion of the Order of the Bath. At the end of the campaign, Keppel was instrumental in helping to deal with the diplomatically tricky situation upriver at Fashoda, where a French expedition under Major J. B. Marchand had established itself on the Nile. The confrontation, the famous "Fashoda Crisis", briefly looked as if it might cause a war with France, but was successfully and amicably settled.
Admiral
Apart from the decorations he received for his services in Sudan, Keppel received the thanks of the Parliament of the United Kingdom in June 1899 and became captain commanding HMS Wildfire. Keppel was transferred to HMS Spartan in the same year and to newly launched cruiser in 1900. He subsequently commanded HMS Warspite, and when that ship was relieved as flagship on the Pacific Station by HMS Grafton in March 1902, he transferred to Grafton as flag captain to Sir Andrew Bickford, Commander-in-Chief of that station. In 1905 he commanded the battleship HMS Implacable and was appointed Commodore, Commanding Royal Yachts. Keppel was awarded a Commander of the Royal Victorian Order in 1906 and, after being promoted to rear admiral in 1908, he was advanced to a Knight Commander. He became second in command of the British Atlantic Fleet in 1909 and was first on HMS Albemarle, later on HMS London. In 1911, he commanded RMS Medina in the squadron which took King George V and Queen Mary to India for their joint coronation as Emperor and Empress of India and as a result he was afterwards invested a Knight Commander of the Order of the Indian Empire. Keppel was promoted vice admiral in 1913, retiring few days later. He was made a full admiral in 1917. Keppel received the 1st Class of the Russian Order of St Stanislaus and the 2nd Class of the Prussian Order of the Red Eagle.
On 6 June 1889, he married Mary Blundell-Hollinshead-Blundell, daughter of Major General Richard Blundell-Hollinshead-Blundell, and had by her two daughters. Marie, the older, became the wife of Charles Marsham, 6th Earl of Romney, while her younger sister Melita married Maurice Hely-Hutchinson. Keppel died at his country residence, Grove Lodge, at Winkfield Row in Berkshire, aged 84 in 1947; his wife died ten years later.